随着 Flex3 产品版本的发布,InfoQ 采访了 Adobe 的 James Ward 来更深入地了解 Flex3。去年 Ward 向 InfoQ 的读者概要介绍了Flex3 并消除了人们对Flex 的很多误解。在这次采访中,Ward 介绍了Flex 以及开源的一些情况,并深入讲解了来自Flex 生态圈的一些内容。
InfoQ 首先请 Ward 细分 Flex 中已开源的部分,同时想知道社区对开源有何反应。
Adobe 的富 Internet 应用(Rich Internet Application,即 RIA)平台包含了很多开源项目。 开发桌面和 web 应用的主要 RIA 工具就是开源的 Flex SDK。Flex SDK 包含了基于 java 的编译器、一个调试器、框架类以及大量的像 Ant 任务那样的小工具。Flash Player、Flex 应用的 web 运行时,包括 Mozilla 的 Tamarin 虚拟机。Adobe 最近发布了 BlazeDS —— 用来方便有效地在 Flex 前端与 Java 后端之间进行通信的开源库。用于桌面 RIA 的新的 Adobe AIR 运行时包含了 Mozilla Tamarin 虚拟机、开源的 SQLite 数据库以及 Webkit HTML 引擎。一些 Flex 开发者选择使用基于 Eclipse 的商业 Flex Builder 工具。Flex Builder 3 Professional 包含了高级的数据可视化组件(包括 AdvancedDataGrid、OLAPDataGrid)以及图表组件。Adobe 的客户非常满意于 Adobe 对开源的参与度和贡献度。他们欣喜地看到 Adobe 在不断投入以促使 Adobe 的 RIA 平台不断发展和进化。
Adobe 给予 Flex 如此多的关注,那么 Adobe 将如何构筑这个平台呢?
Adobe 与 Flex 相关的产品和服务包括 Flex Builder、LiveCycle Data Services、ColdFusion 以及 consulting services。Adobe 还构建了很多与 Flex 相关的下一代产品。
Adobe 支持第三方的 Flex 工具吗(也就是 Intellij / BEA Workshop / FDT)?
Adobe 通过提供开源的 Flex SDK 来支持这些产品。BEA Workshop Flex Builder 包实际上包含了 Flex Builder。
BlazeDS 是什么?
BlazeDS 是一个开源库的集合,可被加入到基于 Java 的 web 应用中以使得 Flex 和 Java 的通信更加简单高效。BlazeDS 包含一个 RPC 式的远程库和一个实时消息系统。访问 http://adobe.com/go/blazeds 以了解更多。
Thermo 是什么?
Thermo 是 Adobe 正在开发的一个新工具,它可以帮助将设计者更多地整合到 RIA 的开发过程中。企业如果希望设计者能够快速构造应用的原型同时让开发者集中精力于开发而不是设计,那么 Thermo 将提供这种帮助。访问 http://adobe.com/go/thermo 以了解更多。
Flex 开发者社区有多大呢?这个社区是怎样的情形呢?
很难说到底有多少活跃的 Flex 开发者。有相当比例的 Flex 开发者活跃在 Flexcoders Yahoo! Group 上,现在已将近 9000 个成员。 MXNA 已经聚合了超过 600 个 Flex 相关的博客,同时在 Flex Showcase 中有超过 200 个生动的、面向公众的 Flex 应用。开发者社区非常杂——有核心开发者,web 开发者以及设计者。同时有很多 Flex 开发者使用的是不同的后台技术,像 Java、ColdFusion、PHP、.Net、Ruby 和 Python 等等。
Java 开发者转型为 Flex 开发者需要哪些东西(时间要多久,路线是什么,他们还能继续使用 Java 技术吗)?
大多数 Java 开发者能很快学会 Flex,因为 Flex 所使用的语言——MXML 和 ActionScript 与大多数 Java 开发者所熟知的东西非常相像。很多寻找 Flex 开发者的公司实际上在寻找 Java 开发者,然后通过 2 周的 Flex 培训让他们快速上手。
Flex 3 与其他构建 RIAs 的平台相比如何(如 Silverlight,AJAX,JavaFX)?
Flex 3 是为 web 和桌面构建 RIA 的最先进和成熟的工具集。从当今使用 Flex 构建的应用的类型上来看这是很明显的——从字处理器到企业软件。我尚未看到很多使用 Silverlight、Ajax 或者 JavaFX 开发的真正的 RIAs 产品——至少根据我对 RIA 更保守的定义上来说是这样。因此很难将 Flex 与其他技术进行比较。
既然 Flex 与 AJAX 是可比拟的,你能否概述一下开发者如何将 AJAX 集成到其 Flex 3 开发中?
在 Flex 3 中,Flex Ajax 桥现在是 SDK 的核心部分。Flex Builder 3 也包含了对 Flex Ajax 桥的支持。在 Flex Builder 中,建立 Flex Ajax 桥仅仅就是点几下鼠标的事情。很多开发者将 Flex 和 Ajax 集成起来以利用每种技术的优势。
视频在 web 中已经非常流行了。 Flex / Flash 在其中扮演什么角色呢?
Flash Player 是在 web 中发布视频的主要方式。使用 Flex 的开发者可以很轻松地利用 Flash Player 视频能力的优势,它已经包含了 H.264 编解码器。视频正在成为 RIAs 不可分割的一部分——甚至在商业应用上。
Flex Builder 3 Professional(专业版)还有什么其他功能呢?
高级的数据可视化组件包含了很多不同的图表类型,例如 PieChart、BarChart、LineChart、AreaChart 以及 PlotChart,另外还包含了像 AdvancedDataGrid 和 OLAPDataGrid 这样的组件。你可以访问 http://labs.adobe.com/wiki/index.php/Flex_3:Feature_Introductions 来了解这些新组件。Flex Builder 3 Professional 还包含了新的内存和性能分析器以及自动化测试支持。
关于 Flex 3 InfoQ 的读者还想了解什么?
访问 http://opensource.adobe.com 以深入了解 BlazeDS 和 Flex SDK
Flex Builder 3 对于学生和教育机构依旧是免费的。其还有一个 60 天的试用版。从 http://flex.org/download 下载它。
让我们知道你对 Flex 3 的想法!我们期望看到你使用它开发的成果。
请访问 http://www.infoq.com/cn/news/2008/02/air-flex-release 来深入了解 Flex 和 AIR 的发行版信息。
查看英文原文: Flex 3.0: Update From Adobe’s James Ward - - - - - -
译者简介:张龙,同济大学软件工程硕士,现就职于理光软件研究所。主要从事文档工作流和办公自动化解决方案的研发工作。热衷于 Java 轻量级框架的研究,对敏捷方法很感兴趣。曾有若干年的 J2EE 培训讲师经历。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com 。
评论