Size: a a a

Android Architecture

2020 October 05

М

Максим in Android Architecture
Vitaly Peryatin
Чем Repository отличается от DataSource тогда?
DAO  😀
источник

VP

Vitaly Peryatin in Android Architecture
Pavel
Тогда это лучше назвать не репозиторий, а как-то типа DataSource. И оно будет принадлежать слою бизнес-логики.
Репозитории лучше держать чистыми. Т.к. возможна ситуация, когда вся эта логика кеширования не нужна будет каким-то интеракторам, либо нужна будет другая.
Разве не DataSource отвечает за получение данных из одного источника данных?
источник

AD

Aleksey D. in Android Architecture
Vitaly Peryatin
Чем Repository отличается от DataSource тогда?
датасорс не нужон
репозиторий - нужон, если хочешь выделить бизнес в отдельный java-модуль
источник

P

Pavel in Android Architecture
Репозиторий - чистая оберка над данными, DataSource - может объединять репозитории.
источник

М

Максим in Android Architecture
Aleksey D.
датасорс не нужон
репозиторий - нужон, если хочешь выделить бизнес в отдельный java-модуль
если у вас репозиторий это дао тогда ...
источник

М

Максим in Android Architecture
Pavel
Репозиторий - чистая оберка над данными, DataSource - может объединять репозитории.
а я думал что репозиторий объединяет датасорсы
источник

P

Pavel in Android Architecture
Vitaly Peryatin
Разве не DataSource отвечает за получение данных из одного источника данных?
Ну, хз как лучше назвать. Может не DataSource, а таки интерактор. Главное, что оно слою бизнес-логики принадлежит
источник

VP

Vitaly Peryatin in Android Architecture
Максим
а я думал что репозиторий объединяет датасорсы
Аналогично считал
Google частенько продвигал такое же видение
источник

AD

Aleksey D. in Android Architecture
Максим
если у вас репозиторий это дао тогда ...
RoomDAO, RetrofitAPI = репозиторий с компромиссом на аннотации
источник

VP

Vitaly Peryatin in Android Architecture
Pavel
Ну, хз как лучше назвать. Может не DataSource, а таки интерактор. Главное, что оно слою бизнес-логики принадлежит
Получение данных - это бизнес-логика?
источник

P

Pavel in Android Architecture
Обработка. Получением занимается репозиторий.
источник

М

Максим in Android Architecture
если есть логика репозитория по получению данных, то можно сделать ему датасорсы, а если нет такой логики, и это решает интерактор - то пусть он сам и работает с датасорсами, не так?
источник

VP

Vitaly Peryatin in Android Architecture
Aleksey D.
RoomDAO, RetrofitAPI = репозиторий с компромиссом на аннотации
Мне казалось, что это как раз чистые DAO
источник

AD

Aleksey D. in Android Architecture
Vitaly Peryatin
Получение данных - это бизнес-логика?
что такое получение данных?
интерфейс репозитория относится к бизнес-слою
реализация - к слою данных
источник

RC

Roman Chumachenko in Android Architecture
Aleksey D.
RoomDAO, RetrofitAPI = репозиторий с компромиссом на аннотации
Ну такое. Сегодня у тебя рум, завтра вы меняете все на realm и нужно избавляться от зависимостей в корень. Сидишь, выпиливаешь кучу аннотаций и иже с ними
источник

AD

Aleksey D. in Android Architecture
Vitaly Peryatin
Мне казалось, что это как раз чистые DAO
очень показательно в Spring Boot реализовано
у них есть репозитории и есть сервисы для бизнес логики
это отлично работает
источник

VP

Vitaly Peryatin in Android Architecture
Aleksey D.
что такое получение данных?
интерфейс репозитория относится к бизнес-слою
реализация - к слою данных
Тут не редко начинает проскакивать мысль, что Repository не нужен, интерактор может работать с DataSource напрямую
Поэтому задал такой вопрос
источник

AD

Aleksey D. in Android Architecture
Roman Chumachenko
Ну такое. Сегодня у тебя рум, завтра вы меняете все на realm и нужно избавляться от зависимостей в корень. Сидишь, выпиливаешь кучу аннотаций и иже с ними
интерфейс рум можно реализовать через realm, какие проблемы?
источник

RC

Roman Chumachenko in Android Architecture
Aleksey D.
интерфейс рум можно реализовать через realm, какие проблемы?
Еще раз - ты будешь менять файл с интерфейсом, чтобы убрать все упоминания рума, потому что зависимость нужно убрать из проекта
источник

AD

Aleksey D. in Android Architecture
Vitaly Peryatin
Тут не редко начинает проскакивать мысль, что Repository не нужен, интерактор может работать с DataSource напрямую
Поэтому задал такой вопрос
хз, чо такое датасорс по сравнению с репозиторием, какая-то надуманная сущность
думаю, что может, т.к. ds ~ repository
источник