案例研究:在 Flex 中应用 Java 编程技巧

  • Moxie Zhang
  • 曹云飞

2008 年 1 月 27 日

话题:Java语言 & 开发架构

Bill Bejeck 在Adobe Flex 开发者中心发表了一篇文章,分享了他从一个 Java 开发者的角度来创建组件和实施分离 Flex 中关注点的经验。

Bejeck 开始使用 Flex 的第一印象是:

作为一名 Java 开发者,我对 ActionScript 3.0 是如此熟悉感到惊讶,这使得学习曲线非常平滑。当我开始使用 Flex 的时候,我可以使用绝大多数(虽然不是全部)我所习惯的方法来写软件,这是很棒的。

Bejeck 在文章中试图创建混合了继承和组合关系的组件,实施分离关注点,尤其是分离视图和商业逻辑。他的 Java 应用开发技巧派上了用场。如他所写:

作为一个有经验的 Java web 开发者,我太知道一个 JSP 页面应该只用于表现。所有的商业逻辑都应该在类中,如果你确实需要在你的 JSP 页面中包含代码,你应该用自定义标签来包装它。

在 Flex 中,可以使用标签将 ActionScript 代码包含在一个 MXML 文件中,这类似于 JSP 页面的特性,Java 代码可以通过标签嵌入页面。然而,通过在其他编程平台上工作得到的经验,Bejeck 使用了一种叫做“代码分离”(code behind)的实践,视觉组件完全在 ActionScript 3.0 中定义,使用 MXML 来决定如何在视觉上渲染组件。关于这种方法,Bejeck 提醒读者:

这是构建一个应用的一种架构性方法。如果你在做快速原型开发,不需要总是使用“代码分离”技术。

Bejeck 继而用代码片段详细描述了他如何扩展 Flex 内置的视觉组件来构建定制组件和事件处理器的过程,例如 DataGrid,Panel,TextInput 和 Button 组件。最后,他用一个包含 8 行代码的简单 MXML 文件显示了如何渲染 UI 并示范了干净的 UI 设计。

Bejeck 总结:

如你所见,使用“代码分离”方法,你的代码会非常简明而易于维护。在你开发更复杂的应用的时候,你不仅仅会有许多好用的组件,而且可以方便地管理你的应用程序的维护和修改工作。

Bejeck 在文章中向对于用 ActionScript 3 编程感兴趣的读者推荐了两本书。它们是:

查看英文原文:Case Study: Applying Java Programming Skill to Flex
Java语言 & 开发架构