intermediate
Duplication management
Убирайте duplicated knowledge и policy, но терпите временно похожий code, пока shared abstraction не станет stable.
Управляйте дублированием: отличайте общее знание от случайного сходства. Библиотеки для стабильных policies; параллельный код, когда product paths расходятся. На review отслеживайте duplication — copy-paste между сервисами — будущий инцидент.
Инструменты (linters, copy-paste detectors) помогают суждению, не заменяют domain understanding.
На интервью: extract vs tolerate для двух похожих validation blocks с разной эволюцией.
Типовые ошибки: mega-shared utils связывают команды; абстракция только по синтаксису; разъехавшиеся forked rules.
Компромисс — один source of truth против независимой velocity команд.
Чеклист:
- Extract общих бизнес-правил.
- Временно терпите косметическое дублирование.
- Мониторьте cross-service copy-paste.