flutter - Flutter 中 Provider 背后的模式可能是什么
问题描述
我想知道颤振中的提供者对应于哪种形式模式。我在 wiki 中看到 Microsoft 的一个是重命名策略。这是否也适用于颤振的提供者?
解决方案
四人组“模式”主要是“这是弥补 C++ 问题的一种方式……”“这是 C++ 被破坏的另一种方式……”的集合。
当他们为 Smalltalk 增强 GoF 手册时,大多数“模式”只是从几行代码中掉出来,因为 Smalltalk 做的一切都是正确的。(当然,Smalltalk 有自己的模式要学习,每种语言也是如此。Smalltalk Best Practice Patterns这本书与 GoF 有很大不同。)
我怀疑为 Dart 和 Flutter 发明的任何框架都不会很好地映射到“GoF 正式模式”。他们解决他们解决的问题。Provider 解决了有关在小部件树上上下共享数据的特定问题。Riverpod(Provider 的继承人)在此基础上解决数据共享问题,而无需绑定到类系统或小部件树,以及有趣的细微变化通知和嵌套策略。
所以,不要把自己归为“这是一个抽象的工厂模式”或“这是一个状态模式”。相反,学习 Dart 和 Flutter 的原生短语和段落。
推荐阅读
- sql - Oracle 从一个表中获取数据并使用它从另一个表中获取数据
- javascript - AngularJS、数据表、$q.defer 和数据重新加载
- php - 在 Laravel 中分离与同步
- python - scipy solve_ivp() 中的访问时间步长
- r - 'rethinking' 包 - 使伽玛分布的比例对数正态
- html - 为什么我的 CSS 文件在 Django 中不起作用?
- ios - 如何使用 ionic 框架处理 iOS 设备上的 CORS 错误
- amazon-cloudformation - 在 Cloud Formation 配置文件中更新 EmailSubject 和 EmailMessage
- vue.js - 将输入值添加到对象中 (Vue.js)
- curl - 如何轮询资源 url 以获取文件更改