Когда я пишу открытую функцию-член класса, которая делает несколько вещей, например ..
void Level::RunLogic(...);
В этой функции я разделяю ее на несколько закрытых функций-членов. Нет смысла разбивать открытую функцию-член на несколько функций, потому что вы не сделали бы одну вещь без другой, и я не хочу, чтобы пользователь беспокоился о том, что делать, в каком порядке и т. Д. выглядеть примерно так ...
void Level::RunLogic(...) {
DoFirstThing();
DoSecondThing();
DoThirdThing();
}
С функциями DoThing, являющимися частными функциями-членами. В Code Complete Стив МакКоннел рекомендует сократить количество функций в классе, но я бы предпочел не просто помещать весь этот код в одну функцию. Мое предположение о его истинном значении состоит в том, что у класса не должно быть слишком много функциональности, но мне просто интересно, что другие программисты думают по этому поводу.
Кроме того, я старался раскрывать все меньше и меньше деталей реализации в моих публичных функциях-членах и перекладывал большую часть работы на небольшие частные функции-члены. Очевидно, это создает больше функций ... но вот в чем вопрос.