WEB开发网
开发学院软件开发Java 了解 Eclipse 中的 JFace 数据绑定,第 3 部分: 使... 阅读

了解 Eclipse 中的 JFace 数据绑定,第 3 部分: 使用高级功能

 2009-12-14 00:00:00 来源:WEB开发网   
核心提示: 引入 Presentation Model桌面应用程序开发的一种核心模式是 Model-View-Controller (MVC) 模式,此模式不是十分适合现代 UI 开发,了解 Eclipse 中的 JFace 数据绑定,第 3 部分: 使用高级功能(4),每个小部件都是自身的小型 MVC 三

引入 Presentation Model

桌面应用程序开发的一种核心模式是 Model-View-Controller (MVC) 模式。此模式不是十分适合现代 UI 开发。每个小部件都是自身的小型 MVC 三元组,在小部件级别留给应用程序可做的操作很少。但是,在应用程序级别,就要特别关注需要处理的启用、验证和数据同步等方面。

尝试解决这些问题的一种模式是 Model-View-Presenter 模式。使用该模式,UI 控件将委托控制器对象来完成一些业务任务,例如单击按钮时 “保存”。将业务逻辑移至控制器是迈向可测试性的正确一步。但是,这种模式没有注意到一个重要因素:控制器逻辑经常需要访问 UI 中的数据和更改状态。如果此状态保存在小部件中,例如文本小部件的启用属性,那么测试控制器就需要完整的 UI 或桩来假冒其状态。

将状态和业务逻辑从 UI 中提取出来就可以修正这种情况,这种方法是由另一个名为 Presentation Model 的 MVC 模式提出来的。可以在 Presentation Model 中测试业务逻辑和状态更改而无需使用 UI 代码。这种分离还使 UI 与 Presentation Model 之间的交互仅限于同步数据和状态。

图 2 显示了 Presentation Model 模式的示意图。了解了一些关于 Presentation Model 的背景知识之后,现在就可以使用这种结构更优的模式来转换受损的示例。


图 2. Presentation Model 模式
了解 Eclipse 中的 JFace 数据绑定,第 3 部分: 使用高级功能

编写可测试的 Presentation Model:测试

要将先前的示例重构为使用 Presentation Model 的示例,第一步是编写测试。为此,需要将 JUnit 支持添加到项目中。在软件包浏览器中单击 META-INF/MANIFEST.MF 文件,以打开 Eclipse MANIFEST.MF 编辑器。然后,单击 Dependencies 选项卡并单击 Required Plug-ins 部分中的 Add 按钮。选择 org.junit 插件,然后单击 OK。现在将显示类似图 3 所示的编辑器。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:了解 Eclipse JFace

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接