我正在开发一个需要与传感器配合以代表车辆状态的应用程序的团队。此状态可以通过外部硬件传感器给出的值表示,也可以通过移动设备自己的传感器进行最少的工作。我们希望能够交换传感器包(在移动或外部传感器之间切换)。我们还希望异步显示这些值,并且我们正在Flutter/Dart中研究Streams和ValueNotifiers。
最好的方法是什么(Stream vs ValueNotifier)?
最佳答案
ValueNotifier非常轻巧,这就是Flutter框架使用它们的原因。
他们不想强加任何性能损失,无论可以避免多小。
流的功能要强大得多,尤其是它们的可组合性,可以轻松使用https://pub.dartlang.org/packages/rxdart提供的高级功能。
在Flutter团队中出于相同的性能考虑,在自定义代码中使用ValueNotifier可能是过早的优化。
我建议使用业务逻辑流。