Читать книгу Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул онлайн
Имена методов – глаголы или глагольные словосочетания.
Методы чтения или записи и предикаты образуются из значения и префикса get, set и is.
При перегрузке конструкторов использовать статические методы-фабрики с именами, описывающими аргументы (принудительное инспользование таких методов).
Нет остроумных шуток.
Ясность предпочтительнее развлекательной ценности.
Нет просторечий и сленга.
Нет шуток.
Одно слово для каждой концепции.
Имена функций законченные и логичные.
Нет эквивалентных методов с именами fetch, retrieve, get в разных классах.
Нет controller, manager, driver в одной кодовой базе.
Имена различны принципиально.
Единый согласованный лексикон.
Не используется одно слово в двух смыслах.
Две разные идеи не обозначены одним термином.
Нет каламбура.
Мысли в коде выражаются доступно.
Используются имена из пространства решения: термины из области информатики, названия алгоритмов, паттернов, математические термины, технические имена.
Используются имена из пространства задачи (клиентские): если нет подходящего программиста, узнаются у специалиста в предметной области.
Разделение концепций из пространств задачи и решения.
Несодержательные сами по себе имена помещаются в определенный контекст для читателя кода – классы, функции и пространства имен с правильно выбранными названиями.
В крайнем случае контекст уточняется префиксом.
Контекст не должен вычисляться.
Функции разделяются на меньшие смысловые фрагменты.
Нет избыточности контекста.
Нет работы против собственного инструментария.
Короткие имена лучше длинных, если только их смысл понятен читателю кода.
Имена экземпляров более точные.
Развивать описательные навыки и единый культурный фон.
Не должно быть опасения возражений при переименовании.
Функции:
Первый уровень структуризации.
Длина не избыточна.
Не содержит повторяющихся фрагментов кода.
Один уровень абстракции.
Функции компактны.
Функции еще компактнее.
Функции желательно не более 20 строк.
Все функции предельно очевидны.
Блоки в командах if, else, while и так далее должны состоять из 1 строки, в которой обычно – вызов функции.