I’m recently reading a lot of functions which look like checkFoo(). They always return void and I invariably have to read them to figure out what they do. They either test some state and possibly throw an exception or they fix up some internal state.
void checkTheWeather(); // throws if it's too cold to go out
void checkTheStove(); // turn the stove off if it's on
From the context above it’s clear what’s going on, but mostly I can’t tell. This naming seems preferable.
void validateGoodWeather(); // throws if it's too cold to go out
void turnOffStove(); // idempotent ftw