Size: a a a

Flutter Developers — русскоговорящее сообщество

2021 February 05

A

Artur in Flutter Developers — русскоговорящее сообщество
Так
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
У тебя будет 1 репозиторий: РепозиторийКниг, допустим пока с 1 методом получитьКниги
источник

A

Artur in Flutter Developers — русскоговорящее сообщество
Так
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
Вот как мы можем реализовать этот метод:

1) пробуем получить книги с сервера
2) если отсутсвует сеть или превышен таймаут - пробуем получить книги из локальной бд
3) если получили книги с сервера - кладем их в локальную бд
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
Видим что тут. нам надо определить 2 источника данных - локальный и с сервера, такие источники называются: Прокси, Декораторы, Провайдеры. Погугли что это значит.
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
У каждого провайдера или декоратора или прокси уже будет источник его данных
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
Например ДАО для бд, или Рест Клиент
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
Где описаны конкретные запросы к конкретным таблицам или конкретным ручкам на сервере
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
Уже источники данных для этих классов - соединение с бд или хттп клиент
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
тоесть репозиторий объединяет различные источники данных
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
метод один, а взаимодействует уже с различными источниками и с сервером и с бд
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
это вот прям типичнейший пример
источник

A

Artur in Flutter Developers — русскоговорящее сообщество
То есть мое понимание в общем верно, только вот сам "кеш," не является обязательным элементом, так как данные могут подтягиваться по запросу из источников. Это по ситуации.
источник

A

Artur in Flutter Developers — русскоговорящее сообщество
Отлично, спасибо за подробное разъяснение
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
ну если не будет кэша - у тебя будут медленее запросы и при отсутсвии интернета не будет работать
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
алсо
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
стратегий то много
источник

A

Artur in Flutter Developers — русскоговорящее сообщество
Ну да
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
к примеру метод репозитория может быть генератором
источник

🅵

🅵🅾️🆇 in Flutter Developers — русскоговорящее сообщество
и на запрос получиКниги
источник