完全编码 UI 并且仅在构建业务逻辑 [Flutter] 之后是不是方便?

Posted

技术标签:

【中文标题】完全编码 UI 并且仅在构建业务逻辑 [Flutter] 之后是不是方便?【英文标题】:Is it convenient to fully code the UI and only after build the Business Logic [Flutter]?完全编码 UI 并且仅在构建业务逻辑 [Flutter] 之后是否方便? 【发布时间】:2021-04-19 12:31:09 【问题描述】:

我正在计划开发我的 Flutter 应用程序(独立开发者)。

这将是一个庞大的项目(firestore 集成、firebase 远程配置、receivecat 应用内购买、algolia 智能搜索等),所以我在开始之前就做好了一切计划,所以当项目开始时,我已经制定了所有步骤,我只需要坚持计划。

回顾一下:

单独编程 巨大的工程 制定要求、验证 UI 原型、定义清晰的应用功能等。

问题

在深入了解应用程序背后的逻辑之前,是否可以方便地完全开发 UI? 通过开发 UI,我的意思是对所有屏幕进行编码,例如登录屏幕、主屏幕,甚至 toasts 栏以向用户提供成功反馈等。因此,尽可能完整地确定 UI。 并且只是稍后构建应用程序的逻辑(firebase、模型、服务器交互等) 考虑到我上面提到的情况,这是最好的策略吗?

附言我将使用 BLOCprovider 作为架构,您的答案会随着不同的状态管理库而改变吗?

附注。 2 我已经在 Sketch 中完全绘制了所有屏幕,包括颜色规格、字体、字体粗细等。

【问题讨论】:

【参考方案1】:

您的想法是正确的,当单独工作时,将所有业务逻辑构建在 UI 之前很方便。但是,之所以如此,是因为您的业务逻辑会自然地通知您的 UI 选择,从而使您的开发更加连贯。

但正如您提到的,您已经完成了您的模拟,所以我强烈建议您先充实 UI,然后继续连接业务逻辑。这有两个好处,第一,它可以让您测试屏幕的最终版本。其次,作为一个单独的项目,开发一个视觉完成的应用程序确实有助于激励。

另外,关于 BLoC,我个人的建议是,如果您有许多状态,例如主页上的提要,您会不断加载帖子并更新状态,则使用它。但是,如果状态相对较少,例如在反馈表中,那么您只需采用直接方法即可节省大量复杂性(和时间)。

干杯,祝你好运!

【讨论】:

非常感谢您的建议,“动机”这件事非常重要而且很有意义。

以上是关于完全编码 UI 并且仅在构建业务逻辑 [Flutter] 之后是不是方便?的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio测试运行:从测试中心的测试计划运行编码的UI自动化测试

如何构建Android MVVM 应用框架

业务逻辑和 UI 逻辑有啥区别?

从业务逻辑向 UI 发布消息

React Hooks的999999个好处

Prism框架的优点