#Arhitecture #LIveData
Don’t use LiveData in RepositoriesПоявление Arch Component показало и видение архитектуры от Google на основе этих компонентов (
схема тут). Видение это подразумевало, что начиная от источников данных в Storage и Repostiory у вас возвращаются LiveData, для обеспечения реактивного получения обновления данных.
Вы задумывались о том, почему компонент
LiveData
, который имеет связь с жизненным циклом (ЖЦ), используется в слое с данными. Данные должны быть абстрагированы от особенностей платформы, в особенности таких как ЖЦ.
Также
LiveData
имеет особенности по работе, например обновление данных происходит через главный поток, для обеспечения синхронизации обновлений
Хорошей заменой для этого будет использование LiveData только для коммуникации между ViewModel и UI, а на всех остальных слоях другие реактивные подходы:
👉
Coroutines Flow👉
Reaktive👉
RxJava