Сложность — это всё, что делает систему трудно понятной и изменяемой.
Причины сложности включают зависимости между модулями и неочевидность важной информации.
Зависимости возникают из-за дублирования кода, исключений, наследования и временной декомпозиции.
Для снижения зависимости рекомендуют использовать глубокие модули с узкими интерфейсами.
Неочевидность проявляется в виде нечетких имён, непоследовательности и недостаточной документации.
Явный код достигается точными именами, единообразием, документацией и правильным форматированием.
Необходимо применять стратегический подход, а не ограничиваться тактическим добавлением функций.
Для поддерживаемости важно постоянно снижать сложность системы, а не только обеспечивать работу кода.
Get notified when new stories are published for "Hacker News 🇷🇺 Русский"