9 Правил написания лучшего кода
Здесь описаны девять правил, известных как «Calisthenics Object». Эти правила направлены на улучшение качества кода, его читаемости и поддерживаемости, предоставляя рекомендации по написанию более чистого и эффективного кода:
Только один уровень вложенности в методе: Это правило предлагает ограничивать глубину вложенности в методах для улучшения читаемости. Рекомендуется использовать техники, такие как выделение вложенного кода в отдельные методы или фильтрация данных перед циклом.
Не использовать ключевое слово else: Это правило поощряет использование ранних возвратов или инициализации заранее, чтобы избежать вложенных структур кода и улучшить ясность.
Оборачивать все примитивные типы в объекты: Инкапсуляция примитивных типов в объектах полезна для валидации, явного указания типа и инкапсуляции логики обработки. Это правило поощряет создание объектов для примитивных типов.
Коллекции первого класса: Классы, содержащие массивы в качестве атрибутов, должны инкапсулировать их в собственном классе для инкапсуляции логики, связанной с коллекциями.
Только один -> в строке (за исключением Fluent interface): Это правило поощряет соблюдение Закона Деметры, ограничивая цепочку методов одним уровнем на строку для улучшения читаемости кода.
Не использовать аббревиатуры: Избегание аббревиатур улучшает ясность кода и его поддерживаемость, облегчая понимание для разработчиков.
Сохранять все сущности небольшими: Ограничение размера классов, методов и пространств имен помогает в поддержании чистых и управляемых кодов.
В классах не должно быть более пяти переменных экземпляра: Ограничение числа переменных экземпляра на класс уменьшает зависимости и облегчает тестирование и поддержку классов.
Без геттеров/сеттеров: Предпочтительно инкапсулировать действия вместо прямого доступа к свойствам объекта, поощряя принцип «Говори, не спрашивай».
Эти правила направлены на то, чтобы направить разработчиков на написание более чистого, более поддерживаемого кода, подчеркивая принципы, такие как инкапсуляция, читаемость и уменьшение сложности. Применение этих правил может привести к улучшению кодовых баз, которые легче понимать, тестировать и поддерживать со временем.
Post #4204
3.12K