Size: a a a

Android Architecture

2020 July 17

v

vitaly in Android Architecture
пытался разобраться, сломал мозга
источник

v

vitaly in Android Architecture
ну и это всё же архитектурный паттерн, а хотелось бы какое-то более конкретное решение
источник

AD

Aleksey D. in Android Architecture
vitaly
ну и это всё же архитектурный паттерн, а хотелось бы какое-то более конкретное решение
более чем конкретное получается
источник

v

vitaly in Android Architecture
Aleksey D.
более чем конкретное получается
дай что нормальное почитать про него, если есть.
А то я слабо понял то, что читал я.
источник

v

vitaly in Android Architecture
этож там где редьюсеры и огромная колбаса из стейта?)
источник

AD

Aleksey D. in Android Architecture
vitaly
этож там где редьюсеры и огромная колбаса из стейта?)
источник

EP

Eugene P. in Android Architecture
vitaly
Давно интересует одна тема, никак не могу найти полностью удовлетворяющее меня решение.

Допустим, дело обстоит вот так:
у меня есть юзкейс (или метод), скажем, "BackupUserData". Он берёт из базы юзеров и бекапит их по одному. Вот у него есть коллбек onBackupResult, в него возвращается лист юзеров и репорт об успешности / неуспешности операции. Проблема же заключается в том, что если я хочу получать какое-то промежуточное состояние операции в слое представления и / или передавать туда данные по мере необходимости, приходится писать какую-то фигню (в архитектурном смысле).

Я ищу способ оставить целостность логики (одна очерченная бизнес-логикой функция - один юз кейс) и при этом иметь возможность взаимодействовать с этим флоу по мере его исполнения.
Моё ублюдочное решение:
Я передаю лямбды в параметрах и возвращаю какие-то лютые кортежи с лямбдами в коллбек (особенно дико это выглядит если принимать во внимание, что у меня ырыкс, который не должен торчать снаружи либы). Выглядит это нечитаемо и я ощущаю, что можно сделать лучше, но не знаю, каким образом. Был вариант создавать по интерфейсу на каждый входной / выходной параметр. Делать так или не делать? В общем, жду ваши варианты, леди и джентльмены)
А вы всегда передаете данные сверху вниз. Низ не может запросить данные у верха по другому каналу?
источник

v

vitaly in Android Architecture
Eugene P.
А вы всегда передаете данные сверху вниз. Низ не может запросить данные у верха по другому каналу?
ну, если потоку данных понадобится что-то у юзера спросить, у я дёргаю лямбды из параметров 🤭
источник

v

vitaly in Android Architecture
Вроде, видел эту статью, но многабукаф. Но сейчас почитаю, спасибо)
источник

EP

Eugene P. in Android Architecture
Теоретически можно иметь шину событий, послать туда запрос, а потом ждать ответ вместо лямбд. У Badoo была статья на хабре с довольно красивым решением
источник

v

vitaly in Android Architecture
Eugene P.
Теоретически можно иметь шину событий, послать туда запрос, а потом ждать ответ вместо лямбд. У Badoo была статья на хабре с довольно красивым решением
ну, если очень грубо говорить, то это и есть шина событий ведь
источник

AD

Aleksey D. in Android Architecture
vitaly
Вроде, видел эту статью, но многабукаф. Но сейчас почитаю, спасибо)
источник

EP

Eugene P. in Android Architecture
vitaly
ну, если очень грубо говорить, то это и есть шина событий ведь
ну вы избавляетесь от миллиона параметров
источник

v

vitaly in Android Architecture
Ого. Спасибо)
источник

AD

Aleksey D. in Android Architecture
vitaly
Ого. Спасибо)
чо спасибо-то
иди это еще прикрути к экзекьюторам)
источник

v

vitaly in Android Architecture
ну буду пробовать)
источник

EP

Eugene P. in Android Architecture
источник

v

vitaly in Android Architecture
спасибо, почитаю
источник

v

vitaly in Android Architecture
о, я читал первые 2 части.
источник

A

Alexander in Android Architecture
источник