Size: a a a

Android Architecture

2021 July 31

JF

Jorik Fat in Android Architecture
но в самом простом варианте - хранить поля профиля в SP и брать из него
источник

TG

Taras GRD in Android Architecture
Привет .Кто нибудь пробовал создавать reusable features ? Иммею ввиду перекидывать фичи с одного приложения в другие . Какие архитектрные подходы при этом использовали?
источник

JF

Jorik Fat in Android Architecture
вот сейчас этим и занимаюсь. Делаю рекламный модуль на 3 приложения
источник

TG

Taras GRD in Android Architecture
Дело в том что я вижу на сейчас только микросервисный подход ,когда выделяется фича со своим presentation ,domain и data и это весьма сильно усложняет разработку так как микросервисы в Андроиде это не микросервисы в бекенде т.е. не могут вызывать друг другу из-за особенности линковки объектных файлов ,проще говоря отдельные Java/Kotlin модули однонаправленные по зависимости
источник

JF

Jorik Fat in Android Architecture
вообще не вижу проблем. Просто из фичи делается библиотека и подключается в приложение
источник

TG

Taras GRD in Android Architecture
Со своим доменом правильно я понимаю?
источник

JF

Jorik Fat in Android Architecture
разумеется
источник

TG

Taras GRD in Android Architecture
Просто фича A может вызывать фичей B ,а фича B в свою очередь вызывать фичу A и тут начинаются сложности с циклическими зависимостями
источник

TG

Taras GRD in Android Architecture
Кто как это решает?
источник

JF

Jorik Fat in Android Architecture
в простейшем виде - callback'и
источник

TG

Taras GRD in Android Architecture
Я ещё думал делать прокси ,как посредники которые собирают эти фичи ,а в прокси уже менеджерится вызовы
источник

JF

Jorik Fat in Android Architecture
циклическая зависимость лечится либо делегатом, либо интерфейсом
источник

TG

Taras GRD in Android Architecture
По аналогии как в DDD что-то вроде Root Aggregate
источник

JF

Jorik Fat in Android Architecture
это уже из 2 фичей одну сделать. И циклические зависимости все равно останутся и будет невозможно их модулями оформить
источник

JF

Jorik Fat in Android Architecture
gradle не даст
источник

JF

Jorik Fat in Android Architecture
но вообще при правильно проектировании не возникает циклической зависимости. Но для этого нужен архитектор
источник

TG

Taras GRD in Android Architecture
А есть ли возможность как-то динамически подставлять модули ?
источник

TG

Taras GRD in Android Architecture
Может есть какие-то хаки в этом плане
источник

TG

Taras GRD in Android Architecture
Или  ли в этом вопросе может помочь подгрузка динамических фичей ,то что google не так давно представила?
источник

TG

Taras GRD in Android Architecture
Или там такой трюк не пройдет?
источник