Выбор ответа Junior Офлайн и синхронизация спрашивают часто обновлено
Единый источник правды в offline-first
Вопрос
Что является источником правды для UI в offline-first приложении?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Локальная база: UI читает только её, а сеть обновляет базу. В offline-first экран подписан на базу (Room Flow, Core Data/SwiftData, Drift/Isar).
Варианты ответа
- Ответ сервера: UI показывает его, база только для офлайна
- Кеш в памяти view model, который переживает поворот экрана
- Локальная база: UI читает только её, а сеть обновляет базуправильный ответ
- Тот источник, база или сеть, который ответил быстрее
Разбор
В offline-first экран подписан на базу (Room Flow, Core Data/SwiftData, Drift/Isar). Сеть только синхронизирует: скачала данные, записала в базу, и UI обновился сам. Так поведение одинаково с сетью и без неё, нет гонок «что показать». Если UI показывает то ответ сервера, то кеш, появляются мигания и рассинхронизация. Кеш в памяти теряется при перезапуске.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.