Из моего опыта по поводу "большой рефакторинг + частые мерджи + тесты" - часто (ежедневно) вливайте изменения из мастера в вашу ветку и будете спать спокойнее. Но всё равно законченные части работы лучше сливать в мастер и закрывать feature flag'ами. Потому что паралельно может разрабатываться другое "большое изменение" о которым в даже и знать возможно не будете.
"Визитер" ? Вникнуть в код с ним сложнее чем в код Command.
Упс, опечатка - ТРИЗ а нет ТРИХ :)
Мне кажется что вы не совсем правильно поняли что имелось ввиду.
Я всегда это понимал как принцип YAGNI.
В ТРИХ есть понятие идеальной системы:
Идеальная система – это такая система, которой нет, а функция которой выполняется.
P.S. Я как-то слышал байку о том что конструктор танка T-34 говорил что: "Cамая лучшая деталь в танке та, которой в нем нет!"
Из моего опыта по поводу "большой рефакторинг + частые мерджи + тесты" - часто (ежедневно) вливайте изменения из мастера в вашу ветку и будете спать спокойнее. Но всё равно законченные части работы лучше сливать в мастер и закрывать feature flag'ами. Потому что паралельно может разрабатываться другое "большое изменение" о которым в даже и знать возможно не будете.
А кто для этого кода Вас является actor-ом - источником изменений?
Ну, насколько я вижу, в примерах нарушается принцип Single Responsibility. Там перемешано представление и логика.