Папка lib превратилась в лабиринт: модуляризация по фичам во Flutter
История типовая. Сначала lib, несколько экранов, папка моделей и один файл сервисов на всё. Приложение выходит, все довольны. Потом фич больше, команда больше, и однажды в моделях триста файлов, в сервисах шесть тысяч строк, а новому инженеру нужны недели, чтобы понять, куда вообще что добавлять.
Автор настаивает, что это не проблема дисциплины, а проблема структуры: код изначально не был устроен так, чтобы переживать рост. Модуляризация по фичам не новый фреймворк и не замена Clean Architecture или DDD, она берёт принципы обоих и применяет их к каждой фиче отдельно, чтобы кусок был самодостаточным и тестировался независимо.
Разбор идёт от минусов layer-first до сборки всего вместе. Актуально, если команда в одной кодовой базе растёт к двадцати с лишним людям.
#flutter
Post #4696
1.55K