В объектно-ориентированном программировании, конечно, нет точного правила о максимальной длине метода, но я все же обнаружил, что эти две цитаты несколько противоречат друг другу, поэтому я хотел бы услышать, что вы думаете.
В « Чистом коде: справочник по мастерству гибкого программного обеспечения» Роберт Мартин говорит:
Первое правило функций состоит в том, что они должны быть маленькими. Второе правило функций заключается в том, что они должны быть меньше, чем это. Функции не должны быть длиной в 100 строк. Функции едва ли должны быть длиной в 20 строк.
и он приводит пример из кода Java, который он видит из Кента Бека:
Каждая функция в его программе была длиной всего две, три или четыре строки. Каждый был прозрачно очевиден. Каждый рассказал историю. И каждый привел вас к следующему в убедительном порядке. Вот как коротко должны быть ваши функции!
Это звучит великолепно, но с другой стороны, в Code Complete Стив Макконнелл говорит что-то совсем другое:
Рутине нужно дать возможность органически расти до 100-200 строк, десятилетия доказательств говорят, что процедуры такой длины не более подвержены ошибкам, чем более короткие процедуры.
И он дает ссылку на исследование, в котором говорится, что рутины длиной 65 строк или более дешевые в разработке.
Так что, хотя существуют различные мнения по этому вопросу, есть ли функциональная передовая практика для вас?
switch
Заявление с 100 case
условиями становится более сопровождаемым , чем 10 уровней if
заявлений , вложенных в друг друга.