Интересный момент, хотя и не связанный с объектно-ориентированным программированием, сделан в стиле кодирования linux guide :
Глава 4: Функции
Функции должны быть короткими и приятными и делать только одну вещь. Они должны помещаться на один или два экрана текста (размер экрана ISO / ANSI составляет 80x24, как мы все знаем), и делать одну вещь и делать это хорошо.
Максимальная длина функции обратно пропорциональна сложности и уровню отступа этой функции. Таким образом, если у вас есть концептуально простая функция, которая представляет собой всего одну длинную (но простую) инструкцию для случая, когда вам приходится делать множество мелких вещей для множества различных случаев, то нормально иметь более длинную функцию.
Однако, если у вас сложная функция, и вы подозреваете, что менее одаренный ученик первого года старшей школы может даже не понять, о чем эта функция, вам следует придерживаться максимальных пределов, тем более тесно. Используйте вспомогательные функции с описательными именами (вы можете попросить компилятор включить их в строку, если вы считаете, что это критично для производительности, и он, вероятно, справится с этим лучше, чем вы).
Другой мерой функции является количество локальных переменных. Они не должны превышать 5-10, или вы делаете что-то не так. Переосмыслите функцию и разбейте ее на более мелкие части. Человеческий мозг, как правило, может легко отслеживать около 7 различных вещей, что угодно, и это запутывается. Вы знаете, что вы великолепны, но, возможно, вы хотели бы понять, что вы сделали через 2 недели.