Size: a a a

Dart & Flutter по-русски

2020 May 25

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Переслано от Sergey Salnikov
provider не стейт менеджмент
описание требует изменений

вот пруф от его создателя для тех кто не вникает в суть или никогда не пользовался provider'ом

https://www.youtube.com/watch?v=BulIREvHBWg&feature=youtu.be&t=107
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
Evgeny Cherkasov
> народ, может кто вкратце объяснить разницу между блоком и провайдером в стейт менеджменте?
блок это концепция отделения бизнес-логики от UI, основанная на получении потока событий от UI и преобразование его в поток состояний.
провайдер - это библиотека, предоставляющая инструмент для DI, а также имеющая ряд дополнительных компонентов, позволяющих удобно и гибко организовать управление состоянием (ChangeNotifierProvider, ChangeNotifier/ValueNotifier, Cunsumer/Selector и т.п.)
> Правильно ли я понимаю, что оба подхода позволяют отделить бизнес логику от UI
да
> оба подхода под капотом используют стримы?
нет, провайдер не завязан на стримы
> Правильно ли то, что с помощью провайдера то что раньше было statefull может стать statless и мы можем в большинстве случаев избавиться от setState'а?
Можем, но вообще говоря это не взаимоисключающие вещи. Не всегда нужно избавляться от setState, провайдер может использоваться и в stateful
> В чем разница тогда между ними, и почему часто их используют вместе, блок+провайдер?
Разница описана в п.1, блок + провайдер используют, насколько я понимаю (сам я блок не использую) , для доставки объекта блока в дерево виджетов
Небольшая поправка - блок+провайдер не используют. В BlocLibrary уже интегрирован провайдер
источник

ND

Nikita Domnickij in Dart & Flutter по-русски
Sergey Molchanovsky
Небольшая поправка - блок+провайдер не используют. В BlocLibrary уже интегрирован провайдер
блок это не только либа
источник

DO

Dmitriy Orteney in Dart & Flutter по-русски
Sergey Molchanovsky
Небольшая поправка - блок+провайдер не используют. В BlocLibrary уже интегрирован провайдер
этож во flutter_bloc она интегрирована
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
ну да
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Sergey Molchanovsky
Небольшая поправка - блок+провайдер не используют. В BlocLibrary уже интегрирован провайдер
Ну если быть точным, то эта зависимость появилась только-только)

До этого была реализация своя на InheritedWidget
источник

RC

Rv Ch in Dart & Flutter по-русски
🅵🅾️🆇
Переслано от Sergey Salnikov
provider не стейт менеджмент
описание требует изменений

вот пруф от его создателя для тех кто не вникает в суть или никогда не пользовался provider'ом

https://www.youtube.com/watch?v=BulIREvHBWg&feature=youtu.be&t=107
фокс. скоко раз ты открывал доку на флаттер и скоко раз это видео:)
источник

ИК

Игорь Кравченко... in Dart & Flutter по-русски
Dmitriy Orteney
этож во flutter_bloc она интегрирована
что мне, например, не мешает ее не использовать))
источник

RC

Rv Ch in Dart & Flutter по-русски
не, не то, не суть, эт я про свое удаленное сообщение
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
🅵🅾️🆇
Переслано от Sergey Salnikov
provider не стейт менеджмент
описание требует изменений

вот пруф от его создателя для тех кто не вникает в суть или никогда не пользовался provider'ом

https://www.youtube.com/watch?v=BulIREvHBWg&feature=youtu.be&t=107
Ну он не совсем так сказал.
Он сказал: "Провайдер — это инструмент, а архитектуру делаете вы сами".
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
Блок тоже инструмент. Он же сам за тебя архитектуру не построить)
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Игорь Кравченко
что мне, например, не мешает ее не использовать))
Ну мб это было к тому, что импортировать провайдер уже не очень много смысла.
Тк все сводится именно к блоку и его виджетам)
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Sergey Molchanovsky
Блок тоже инструмент. Он же сам за тебя архитектуру не построить)
Нет, блок задает архитектуру
источник

EC

Evgeny Cherkasov in Dart & Flutter по-русски
dmitrii ivanov
просто интересно, а что вместо блока?
Я лично использую MVVM подход. Т.е. создаю VM класс, в котором подготавливаются и обрабатываются данные для view, а также действия пользователя
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Задает тот самый промежуточный слой
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
Evgeny Cherkasov
Я лично использую MVVM подход. Т.е. создаю VM класс, в котором подготавливаются и обрабатываются данные для view, а также действия пользователя
А получаешь во вью как? Через стримы?
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Evgeny Cherkasov
Я лично использую MVVM подход. Т.е. создаю VM класс, в котором подготавливаются и обрабатываются данные для view, а также действия пользователя
Тоесть ты используешь стейт менеджер, как и все)
источник

EC

Evgeny Cherkasov in Dart & Flutter по-русски
Sergey Molchanovsky
Небольшая поправка - блок+провайдер не используют. В BlocLibrary уже интегрирован провайдер
BlocLibrary это конкретная реализация подхода bloc. Я имел в виду саму концепцию, а не реализацию
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Стейт менеджер и есть эти буквы VM (с) @Jonfir
источник

🅵

🅵🅾️🆇 in Dart & Flutter по-русски
Sergey Molchanovsky
Небольшая поправка - блок+провайдер не используют. В BlocLibrary уже интегрирован провайдер
Я использовал.
источник