Size: a a a

Android Architecture

2020 May 11

AM

Artem Mi in Android Architecture
по поводу вчерашнего юзкейса, переделал под флов
источник

VP

Vitaly Peryatin in Android Architecture
Artem Mi
по поводу вчерашнего юзкейса, переделал под флов
Почему отображением состояний занимается UseCase?
источник

AM

Artem Mi in Android Architecture
нужно юз кейс передать в репозиторий, а репозиторий уже обрабатывает состояния?
источник

VP

Vitaly Peryatin in Android Architecture
Artem Mi
нужно юз кейс передать в репозиторий, а репозиторий уже обрабатывает состояния?
Состояния обрабатывает Presenter/ViewModel
В то время как UseCase/Interactor отвечает за бизнес-логику: фильтрация полей например, маппинг

Repository занимается получением данных из БД, сети и так далее, это единая точка получения данных

flow обычно получается прямо на уровне интерфейса Retrofit, Room Dao или создают flow на уровне Repository
источник

AM

Artem Mi in Android Architecture
обработка состояний тут, чтобы во view модель пришли результаты и на основании них датабиндинг отображает данные
источник

VP

Vitaly Peryatin in Android Architecture
У flow есть такие операторы как onStart(), onComplete(), onEach()
В них можно переключать состояния
источник

AM

Artem Mi in Android Architecture
источник

AM

Artem Mi in Android Architecture
тип такое
источник

AM

Artem Mi in Android Architecture
в вм
источник

AM

Artem Mi in Android Architecture
сейчас гляну что это
источник

VP

Vitaly Peryatin in Android Architecture
Перенося старый опыт работы с Rx я пришел к такому коду
И пока что никаких проблем с его поддержкой не вижу
Внутри VM:
источник

VP

Vitaly Peryatin in Android Architecture
Эх, catch можно было сократить(
источник

Q

QMan in Android Architecture
Vitaly Peryatin
Состояния обрабатывает Presenter/ViewModel
В то время как UseCase/Interactor отвечает за бизнес-логику: фильтрация полей например, маппинг

Repository занимается получением данных из БД, сети и так далее, это единая точка получения данных

flow обычно получается прямо на уровне интерфейса Retrofit, Room Dao или создают flow на уровне Repository
с каких пор бизнес-логика маппит ?
источник

VP

Vitaly Peryatin in Android Architecture
QMan
с каких пор бизнес-логика маппит ?
Если нужно что-то смапить, что касается бизнес-логики, то почему нет?
источник

VP

Vitaly Peryatin in Android Architecture
Да и впринципе мапить может любой слой
источник

Q

QMan in Android Architecture
Vitaly Peryatin
Если нужно что-то смапить, что касается бизнес-логики, то почему нет?
это ответсивенность другого слоя
источник

VP

Vitaly Peryatin in Android Architecture
QMan
это ответсивенность другого слоя
Какого?
источник

Q

QMan in Android Architecture
Vitaly Peryatin
Перенося старый опыт работы с Rx я пришел к такому коду
И пока что никаких проблем с его поддержкой не вижу
Внутри VM:
такая реализация не оч в качестве системы событий и единообразия
источник

VP

Vitaly Peryatin in Android Architecture
QMan
такая реализация не оч в качестве системы событий и единообразия
Как предлагаешь улучшить?
источник

Q

QMan in Android Architecture
меняем flow на что-нибудь иное и всё, приехали
источник