Size: a a a

Android Architecture

2020 September 14

KD

Konstantin Dovnar in Android Architecture
Egor Sigolaev
Domain слой - это юзкейсы, маперы, конвертеры, утилы, хелперы и прочие вещи. Думаю так понятнее.
Мапперы это не о домейне.
Разве что какие-то внутренние.
источник

А

Александр in Android Architecture
В домене разве должны быть мапперы?
источник

ES

Egor Sigolaev in Android Architecture
Konstantin Dovnar
Мапперы это не о домейне.
Разве что какие-то внутренние.
Ну смотря какие. А где их лучше положить?
источник

А

Александр in Android Architecture
В дата слое, в презентэйшн слое
источник

KD

Konstantin Dovnar in Android Architecture
Egor Sigolaev
Ну смотря какие. А где их лучше положить?
Во внешних слоях.
источник

ES

Egor Sigolaev in Android Architecture
Александр
В дата слое, в презентэйшн слое
Маппер моделей в дату класть? Это же работа с классами так то, почему в домейн не засунуть?
источник

ES

Egor Sigolaev in Android Architecture
А, стоп. Только сейчас дошло, в дате всё таки лучше
источник

KD

Konstantin Dovnar in Android Architecture
Egor Sigolaev
Маппер моделей в дату класть? Это же работа с классами так то, почему в домейн не засунуть?
Затем, что домейн у тебя чист от внешних зависимостей. А так, с мапперами внутри, у тебя они там появятся.
источник

ES

Egor Sigolaev in Android Architecture
Konstantin Dovnar
Затем, что домейн у тебя чист от внешних зависимостей. А так, с мапперами внутри, у тебя они там появятся.
Да, понял уже, тупанул)
источник

АП

Анатолий Петров... in Android Architecture
Вроде проясняется) сколько должно быть объектов DTO  межу уровнями? К примеру у меня есть сущность, полученная по сети, потом сущность, которую я храню в базе. И сущность, которую я использую при выводу в UI. Так вот, на каком уровне расположить эти маперы? И между какими слоями заниматься перегоном этих сущностей?
источник

АП

Анатолий Петров... in Android Architecture
И какие зависимости должны быть между модулями?
Я думаю, что app видит толькл domain, в domain видит data
источник

ES

Egor Sigolaev in Android Architecture
Анатолий Петров
Вроде проясняется) сколько должно быть объектов DTO  межу уровнями? К примеру у меня есть сущность, полученная по сети, потом сущность, которую я храню в базе. И сущность, которую я использую при выводу в UI. Так вот, на каком уровне расположить эти маперы? И между какими слоями заниматься перегоном этих сущностей?
Я думаю мап дто рума в ui, и дто из бека в ui. А, ну и из бека в рум.
источник

RC

Roman Chumachenko in Android Architecture
Анатолий Петров
Вроде проясняется) сколько должно быть объектов DTO  межу уровнями? К примеру у меня есть сущность, полученная по сети, потом сущность, которую я храню в базе. И сущность, которую я использую при выводу в UI. Так вот, на каком уровне расположить эти маперы? И между какими слоями заниматься перегоном этих сущностей?
У тебя уровень более внешний (домен в центре если) должен получать дто из слоев ниже. В идеале стоит абстрагироваться от того, что тебе ретрофит и рум возвращают - эти объекты только детали имплементации
источник

АП

Анатолий Петров... in Android Architecture
Egor Sigolaev
Я думаю мап дто рума в ui, и дто из бека в ui. А, ну и из бека в рум.
Получится, что usecase будет возвращать объект room, который я буду после этого конвертировать в ui?
источник

ES

Egor Sigolaev in Android Architecture
Анатолий Петров
Получится, что usecase будет возвращать объект room, который я буду после этого конвертировать в ui?
Юзкейс смотря какой. Если хочешь отобразить данные для ui из рума, то юзаешь юзкейс с мапингом ROOM -> UI.
источник

RC

Roman Chumachenko in Android Architecture
Вроде как конвертация такая + перехват ошибок с подменой на свои должны в репе быть
источник

ES

Egor Sigolaev in Android Architecture
Анатолий Петров
Получится, что usecase будет возвращать объект room, который я буду после этого конвертировать в ui?
Зачем потом мапить, если можно на ходу?
источник

АП

Анатолий Петров... in Android Architecture
Анатолий Петров
Вроде проясняется) сколько должно быть объектов DTO  межу уровнями? К примеру у меня есть сущность, полученная по сети, потом сущность, которую я храню в базе. И сущность, которую я использую при выводу в UI. Так вот, на каком уровне расположить эти маперы? И между какими слоями заниматься перегоном этих сущностей?
Т е у меня будет маппер в app, который будет перегонять объекты  Retrofit и Room в UI, правильно? А может сделать, чтобы уровень data возвращал dto объекты, без каких-либо аннотации рума и ретрофита?
источник

E

Eugene in Android Architecture
Анатолий Петров
И какие зависимости должны быть между модулями?
Я думаю, что app видит толькл domain, в domain видит data
а почему вы на модули делите не по фичам, а по клин слоям?
источник

АП

Анатолий Петров... in Android Architecture
Egor Sigolaev
Зачем потом мапить, если можно на ходу?
Это я имел ввиду. Можно такой вопрос глупенький, раньше использовал  RxJava, решил попробовать крутизны. Так вот, можно конвертировать suspend await  функцию на лету? И делать это нужно через map или flatmap?
источник