Как стать автором
Обновить

Разделение презентационного слоя фичи на модули в Android приложении

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров5K
Всего голосов 15: ↑15 и ↓0+15
Комментарии5

Комментарии 5

Спасибо интересное решение, еще можно на decompose посмотреть

Спасибо за статью!? А как быть с ui фичи, виджетом? В примере экран с тремя виджетами. Их реализация где лежит? В модуле экрана или какой-то common модуль со всеми виджетами? А если мне и ui и логику фичи нужно переиспользовать?

В нашем случае мы весь ui оставляем в модуле с родительской фичей (в примере ProfileFragment). Но если виджет переиспользуется, его можно вынести в какой-то базовый модуль, придумать что-нибудь из разряда base-widget. В альфе у нас ui состоит из компонентов дизайн системы, которые хранятся отдельно и подключаются в модуль как либа и во фрагменте мы из них собираем ui. Но это совсем другая история для другой статьи)

Хорошо, такой подход и я использую, только компоненты не в либе, а просто отдельным модулем. Благодарю!

Спасибо, хорошая статья. Уточнение на подумать.

Эти интерфейсы фичи с постфиксом Аpi - это куски вьюмодели, в которых аккумулируется логика, значит удобно их представлять в виде делегатов, которые подключаются к основной вьюмодели. Тогда это стали фичаViewModelDelegate и из названия уже понятно что они должны делать. На равне с такими делегатами, могут в апи модуле шариться и фабрики для обычной навигации на фичу, и вьюхи со своими модельками, если это необходимо.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий