Инженерные принципы¶
Это раздел про практические инженерные правила, которые постоянно всплывают в ревью и проектировании: DRY, KISS, YAGNI и похожие.
Они не описывают объектную модель напрямую, как SOLID, и не распределяют ответственность, как GRASP. Их задача проще: не дать архитектуре и коду усложниться без причины.
Что внутри¶
| Принцип | Что означает | На что смотреть |
|---|---|---|
DRY (Don't Repeat Yourself) |
Не дублируйте знание и правило в нескольких местах. | Не придется ли синхронно править один и тот же смысл в трех модулях. |
KISS (Keep It Simple, Stupid) |
Выбирайте простое решение, если оно уже закрывает задачу. | Не появился ли паттерн там, где достаточно процедуры или запроса. |
YAGNI (You Aren't Gonna Need It) |
Не стройте расширение заранее без подтвержденной потребности. | Не проектируете ли вы "на будущее", которого пока нет. |
| Rule of Three | Обобщать стоит после устойчивого повторения. | Не выносите ли абстракцию слишком рано. |
| Separation of Concerns | Разделяйте разные типы задач по слоям и контекстам. | Не смешаны ли UI, orchestration, доменная логика и интеграции. |