Scoped Model、BLoC pattern、StreamBuilder 和 Inherited Widget(或 Model)我应该选择哪一个,为什么?
Scoped Model, BLoC pattern, StreamBuilder and Inherited Widget(or Model) which one should I chose and why?
我想我现在至少对如何使用 BLoC, [=12 有了一个模糊的认识=]Stream Builder and Inherited Widget(or Model ) 在我的应用程序中(没什么特别的,但对我来说这需要时间),但是玩 Scoped 模型
我有一种生存危机:我觉得他们大多可以做同样的事情,或者至少我可以和他们中的任何一个取得同样明显的结果,但我没有能力理解 当和为什么一个比另一个好。
Scoped 模型与 Bloc
简而言之:如果您有小型应用程序,请使用 scoped models,因为 bloc 会使它复杂化,如果您有大型应用程序,请使用 bloc.
详细解释见这篇文章:bloc vs scoped_model
Stream Builder 与 Inherited Widget
这是 Remi Rousselet 给出的 stream builder 和 inherited widget 之间的一个很好的比较:
Streams/Sink绝对是极好的存储状态。有一些现有的架构,比如BLoC,用的比较多。
但是,Streams 也没有完全取代 InheritedWidget
。 InheritedWidget
具有很酷的功能,可以仅覆盖屏幕的一部分内容。一个很酷的应用是 Theme
.
一般来说,Streams
很适合存储业务逻辑。但是当需要存储UI逻辑时,InheritedWidgets
占上风。
我想我现在至少对如何使用 BLoC, [=12 有了一个模糊的认识=]Stream Builder and Inherited Widget(or Model ) 在我的应用程序中(没什么特别的,但对我来说这需要时间),但是玩 Scoped 模型
我有一种生存危机:我觉得他们大多可以做同样的事情,或者至少我可以和他们中的任何一个取得同样明显的结果,但我没有能力理解 当和为什么一个比另一个好。
Scoped 模型与 Bloc
简而言之:如果您有小型应用程序,请使用 scoped models,因为 bloc 会使它复杂化,如果您有大型应用程序,请使用 bloc.
详细解释见这篇文章:bloc vs scoped_model
Stream Builder 与 Inherited Widget
这是 Remi Rousselet 给出的 stream builder 和 inherited widget 之间的一个很好的比较:
Streams/Sink绝对是极好的存储状态。有一些现有的架构,比如BLoC,用的比较多。
但是,Streams 也没有完全取代 InheritedWidget
。 InheritedWidget
具有很酷的功能,可以仅覆盖屏幕的一部分内容。一个很酷的应用是 Theme
.
一般来说,Streams
很适合存储业务逻辑。但是当需要存储UI逻辑时,InheritedWidgets
占上风。