Модель Scoped, шаблон BLoC, StreamBuilder и Inherited Widget(или Model), какую из них выбрать и почему?

Я думаю, что теперь у меня есть хотя бы смутное представление о
как использовать BLoC, Stream Builder
и унаследованный виджет(или модель) в моем приложении
(ничего особенного, но для меня это заняло время),
но играть с моделью Scoped
У меня был своего рода экзистенциальный кризис:

Я чувствую, что они в основном могут сделать то же самое или
по крайней мере, я могу добиться таких же очевидных результатов
с любым из них,
но у меня нет компетенции, чтобы понять
когда и почему один лучше другого.

Я намеренно держу вопрос открытым, не ненавидь меня за это,
но я надеюсь лучше понять, что я делаю
и что происходит "под капотом" с использованием того или другого.

Спасибо за ваше терпение. Francesco

PS: я не могу добавить тег 'scoped model', если вы можете сделать
это может быть актуально для новичков, как я

0 ответов

Модели с прицелом и блок

Вкратце: если у вас небольшие приложения, используйте модели с областями действия, поскольку блок имеет тенденцию усложнять его, а если у вас большое приложение, используйте блок.
Смотрите эту статью для подробного объяснения: блок против scoped_model


Stream Builder vs Inherited Widget

Вот хорошее сравнение между построителем потока и унаследованным виджетом, данное Реми Русселетом: /questions/20810070/zachem-ispolzovat-inheritedwidget-a-myi-mozhem-ispolzovat-broadcast-streams-streambuilder-i-staticheskie-peremennyie/20810073#20810073

Streams / Sink определенно отлично подходят для хранения состояния. Существует несколько существующих архитектур, таких как BLoC, которые часто их используют.

Но потоки не полностью заменяют InheritedWidget или. InheritedWidget поставляется с классной возможностью переопределить его содержимое только для части экрана. Одно классное приложение это Theme,

Вообще говоря, Streams круто хранить бизнес логику. Но когда вам нужно хранить логику пользовательского интерфейса, InheritedWidgets берет верх

Другие вопросы по тегам