Добрый день, нужно авторитетное мнение чтобы снова почувствовать себя уверенно.
Я делаю свой первый мобильный апп. Чтобы не терять время на всякие бэкенды я влип в Firebase. А потом обмазался им по самые уши - использую кэш Firestore вместо каких-либо state managenet решений: просто заполняю/обновляю его при sign-in'е, а потом все чтения данных во всех виджетах идут с GetOptions(source: cache)
- чтоб счёт не улетел в космос. Размер кэша стоит unlimited. Очевидно что это достаточно маргинальное решение 🤷♂️, и не знаю каким боком ещё вылезет в будущем (апп в сторе, реальные юзеры уже есть), но таким образом я в некоторой степени достигаю работы приложения в оффлайне (а это цель).
Мой апп - это проигрыватель видео-курсов и витрина, где их можно купить. Ну как Udemy, только нишево и под имеющуюся аудиторию. Сейчас я собрался запилить полноценную поддержку оффлайна - шоб и видео скачать можно было на девайс. И сильно задумался: может пора взяться за ум и притянуть какой Redux/MobX/GetX/Bloc/whatever, чтобы код более соответствовал общепринятым практикам? Но я в это всё почти не умею, и меня уже тошнит после двух суток изучения документации в попытках выбрать инструмент. Я не собираюсь уезжать с Firestore, но мне не очень нравится код который я сейчас написал. Хочется большего контроля над стейтом и над его персистенсом, но при этом не хочется сильно больше кода - я всё делаю один.
Ищу ответ на вопрос какой подход к управлению стейтом приложения и его персистенсом в коллекции и документы Firestore принесёт меньше всего хлопот 🕵️♂️