Умная мысль:
Когда ты программируешь, изначально нужно делать частные случаи.
В частных случаях ты ближе к смыслу.
Не надо стремиться к универсализации заранее, потому что ранняя универсализация — это Вавилонская башня.
Универсализация нужна только тогда, когда ты сделал два частных случая и увидел, что у них действительно одно и то же.
Коротко как принцип
- Сначала делай конкретное, живое действие под реальную задачу.
- Не обобщай «на всякий случай».
- Сравнивай только уже работающие частные решения.
- Обобщай только подтверждённо общее (одинаковый жизненный цикл, одинаковая ответственность, одинаковые ограничения).
Почему это важно
Преждевременная универсализация:
- размывает причинность;
- прячет ответственность;
- превращает архитектуру в «механизм без субъекта»;
- создаёт хрупкие abstraction layer’ы и усложняет систему.
Зрелая универсализация:
- появляется после практики;
- сжимает уже найденную структуру;
- сохраняет связь с реальным смыслом действий.
Рабочее правило
Сначала два (или больше) честных частных случая.
Потом — аккуратное извлечение общего.
Не «могут быть похожи», а «доказанно изоморфны в работе».