我遍历了有关Flutter的几篇教程,发现它们涵盖的基础知识还不错,但是好的设计和好的体系结构的某些方面却一直缺失。我正在Flutter中编写我的第一个实际(不是玩具)应用程序,发现自己遇到了这些遗漏的问题。
全局数据。一旦有人安装了该应用程序并尝试使用该应用程序,我请他们登录/创建一个帐户,因为这是专门用于管理人群的应用程序。我在后端使用Firebase,完成身份验证的包从所有内容返回Future
可更新数据。我有一个页面,其中列出了当前用户所属的组。但是,用户可以创建新组,加入现有组或离开组。当他们这样做时,我需要重新绘制页面。群组列表来自运行Firebase查询,因此执行操作(加入,离开等)应向应用发出信号以重绘页面,这将带来重新运行查询的副作用。可以想象,可能使页面依赖于查询结果(如何?),并在更新时重新绘制页面,而是在某个位置放置一些小部件来跟踪查询。这里还有一个answer暗示这可能是正确的方法,但这实际上与相对不变的数据有关(对于单个用户来说,语言环境并不会经常改变)。所以,再次,我不敢相信我是唯一做这种事情的人。在这种情况下,最佳做法是什么?