Выбор ответа Senior Room и хранение данных обновлено
fallbackToDestructiveMigration
Вопрос
Когда допустимо использовать fallbackToDestructiveMigration()?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Когда база это кеш данных с сервера, которые можно перезагрузить. Деструктивная миграция удаляет все таблицы и создаёт схему заново.
Варианты ответа
- В любом проекте: это рекомендуемый Google способ миграций без лишнего кода
- Когда в базе черновики и заметки пользователя, которые легко создать заново
- Когда база это кеш данных с сервера, которые можно перезагрузитьправильный ответ
- В release-сборках, а в debug использовать явные миграции для проверки
Разбор
Деструктивная миграция удаляет все таблицы и создаёт схему заново. Для кеша ленты это приемлемо: данные снова придут из сети. Для данных, которые существуют только на устройстве (заметки, черновики, неотправленные изменения), это потеря данных пользователя. Рекомендованный способ это явные миграции или автомиграции с тестами.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.