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

了解 Eclipse 中的 JFace 数据绑定,第 1 部分: 数据绑定的优缺点

 2009-12-14 00:00:00 来源:WEB开发网   
核心提示: Jaysoft 接入了流行的 JGoodies 数据绑定 API 用于与 SWT 结合使用,核心类几乎同 JGoodies 一样,了解 Eclipse 中的 JFace 数据绑定,第 1 部分: 数据绑定的优缺点(6),特定于 Swing 的模型则被适用于 SWT 控件的模型所替代,JFace

Jaysoft 接入了流行的 JGoodies 数据绑定 API 用于与 SWT 结合使用。核心类几乎同 JGoodies 一样。特定于 Swing 的模型则被适用于 SWT 控件的模型所替代。

JFace 数据绑定

最近出现的另一个 Java 数据绑定新成员是 JFace 数据绑定框架。Eclipse V3.2 发布版中附带了该 API 的临时版本。不同于 SWTBinding/JGoodies 框架,JFace 数据绑定是从头开始构建的,专门与 SWT 和 JFace 结合使用。

数据绑定的优点

除了解决同步问题之外,在应用程序中使用数据绑定框架还有其他优点。由于是重复使用同一段同步代码,而不是创建自己的同步代码,因此出现的错误会少一些。另一个主要的优点是获得应用程序可测试性。

流行的 Presentation Model提倡将应用程序的状态与业务逻辑分开放入模型层中,而模型层是从视图的 GUI 控件中分离出来的。模型的状态频繁与视图同步,如图 2 所示。


图 2. 使用 Presentation Model 的关系
了解 Eclipse 中的 JFace 数据绑定,第 1 部分: 数据绑定的优缺点

这类设计允许测试应用程序的所有业务逻辑而无需将视图实例化。例如,当总数大于 100 时启用表中的某些控件,有一个 "if total > 100" 的启用条件,还有一个基于此条件评估的相关状态。

使用 Presentation Model 模式,此状态被设在 Presentation Model 的变量中,并与视图同步以修改控件的启用。正因为这样,才能够测试逻辑而无需访问视图中的 GUI 组件。

用 SWT 和 Swing 通常很难访问 GUI 组件并模拟(mock)这些组件。针对 Presentation Model 运行所有测试,因为 Presentation Model 包含有条件的逻辑和一个储存随执行而更改的状态的空间。整个模式的一个难点是何时或怎样在 Presentation Model 和视图之间来回同步数据。在数据绑定前,解决这个问题很难。现在,这个问题就像在 Presentation Model 中将控件绑定到字段上或关联的域对象上一样容易。

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

Tags:了解 Eclipse JFace

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