Но это сложно и скучно, так что упаковываем всё в хуяк-хуяк, чтобы никто не уснул
Только это все не для нет-проектов и не для стартапов без будущего
- бизнес логика живет отдельно
- сайд-эффекты отдельно
- UI компоненты отдельно от данных и сайд-эффектов
- единый способ моделирования доменных сущностей с минимальной иерархией
- родители не передают модели детям, отдельные подписки по id
Конкретные либы тут решают не так сильно по началу, как разделение и минимальные согласованные интерфейсы
Перенести необходимость принятия решений на будущее, когда будет известно чуть больше данных.
А то сплошные риски, overfitting и overengineering
Всё остальное - дополнительные меры для обеспечения этого принципа
