По порядку Senior Модульность обновлено
Как вынести фичу из монолита в модуль
Вопрос
Расставьте шаги выделения фичи из монолитного приложения в отдельный модуль.
Попробуйте сами
Расставьте шаги по порядку стрелками.
- 1Перенести код фичи в модуль, закрыв внутреннее от внешнего доступа
- 2Описать публичный API фичи (точки входа, интерфейсы навигации)
- 3Найти границы фичи и её входящие и исходящие зависимости
- 4Вынести общие зависимости фичи (сеть, модели, UI-компоненты) в core-модули
- 5Подключить реализацию в app-модуле через DI и удалить старые прямые ссылки
Показать ответ и разбор
Коротко
Модуляризацию делают постепенно, фича за фичей. Сначала разрывают зависимости, потом переносят: если перенести код раньше, модуль потянет за собой половину монолита.
Правильный порядок
- 1Найти границы фичи и её входящие и исходящие зависимости
- 2Вынести общие зависимости фичи (сеть, модели, UI-компоненты) в core-модули
- 3Описать публичный API фичи (точки входа, интерфейсы навигации)
- 4Перенести код фичи в модуль, закрыв внутреннее от внешнего доступа
- 5Подключить реализацию в app-модуле через DI и удалить старые прямые ссылки
Разбор
Модуляризацию делают постепенно, фича за фичей. Сначала разрывают зависимости, потом переносят: если перенести код раньше, модуль потянет за собой половину монолита.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «Модульность»
- Почему сборка не ускорилась после модуляризации
- Что выносят в core-модули
- Циклические зависимости модулей
- Зависимость фичи от фичи
- Инструменты модуляризации на Android
- Инструменты модуляризации на iOS
- Типы модулей мобильного приложения
- api и implementation в Gradle