Ответ 1
Модели с прицелом и блок
Вкратце: если у вас небольшие приложения, используйте модели с областями действия, поскольку блок имеет тенденцию усложнять его, а если у вас большое приложение, используйте блок.
Смотрите эту статью для подробного объяснения: блок против scoped_model
Stream Builder vs Inherited Widget
Вот хорошее сравнение между построителем потока и унаследованным виджетом, данное Реми Русселетом: fooobar.com/questions/15551320/...
Streams/Sink определенно отлично подходят для хранения состояния. Существует несколько существующих архитектур, таких как BLoC, которые часто их используют.
Но Streams также не полностью заменяет InheritedWidget
. InheritedWidget
поставляется с классной возможностью переопределять контент только для части экрана. Одно классное приложение это Theme
.
Вообще говоря, в Streams
здорово хранить бизнес-логику. Но когда вам нужно сохранить логику пользовательского интерфейса, InheritedWidgets
берет верх.