Нужна ли многомодульность

«Нужна ли многомодульность» — вопрос из категории Архитектура, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Многомодульность в Android-проектах полезна, но не обязательна. Она помогает:

  1. Разделить ответственность – логика, UI, данные в отдельных модулях.
  2. Ускорить сборку – Gradle кэширует неизмененные модули.
  3. Упростить тестирование – модулируются независимо.
  4. Повысить переиспользуемость – общий код в core-модулях.

Пример структуры:

app/ (UI + фичи)
feature-auth/ (логика авторизации)
core-network/ (API клиент)
core-database/ (Room)

Но для маленьких проектов это overkill – добавляет сложность. Начинать лучше с одного модуля, а разделять по мере роста.