知识卡片

UI模型层把界面框架限制在最外层

普通读书笔记卡 · 1806.b

内容

团队没让UI控件直接和业务领域对象打交道,而是插入UI模型层:表格对象把领域属性包装成有类型属性、不知道用哪种控件呈现;绑定对象负责把属性和具体控件连接、做格式转换。Swing被彻底限制在绑定层,业务逻辑不受GUI技术选型影响,还能直接操作UI模型属性做单元测试,无需启动图形界面。

参考来源

- 位置:《架构之美》第4章《记忆留存》4.3.3节《UI和UI模型》(源文件:程序之美系列套装(6册)团队之美、项目管理之美、架构之美、数据之美、测试之美、安全之美/_epub-src/OEBPS/Text/part0130.xhtml) - 结论依据:原文明确"表格是完全不可视的。它不处理UI组件,只包含对象、属性以及这些属性之间的交互……UI模型让我们能够将Swing保持在UI层之内。它也为单元测试提供了巨大的好处"。 - 原始内容:表格是完全不可视的。它不处理UI组件,只包含对象、属性以及这些属性之间的交互……UI模型让我们能够将Swing保持在UI层之内。它也为单元测试提供了巨大的好处。我们的单元测试可以通过UI模型的属性来驱动UI模型。