富 Internet 应用(RIA)技术的一个重要特性就是需要支持 Web 标准。新发布的 Cannonball ActionScript 库就是这方面的排头兵,它将主要的 Web 标准加入到了基于 Adobe Flash 的 RIA 开发中。InfoQ 采访了 Cannonball 的创建者 John French 以了解更多信息。
French 首先说到:
Cannonball 正在 ActionScript 3.0 中实现 DOM Level 3 和 CSS3 规范,这些规范是由 W3C 定义的。 当前它的组成包括:
- 一个 CSS3 解析器和对象模型
- 一个基于 DOM 的实现
- 一个 HTML DOM 实现
- 一个用来浏览和渲染以上内容的引擎
他继续说到创建 Cannonball 的动机是使 Flash 在 Web 上表现的更加出色,这是借助于现有 Web 技术的力量而实现的。他说到:
很多该由 HTML 表示的内容被封装到了 SWFs 中,或是以私有的 XML 格式表示,这导致其可访问性的降低。Cannonball 帮助开发者在他们熟悉的、对搜索引擎友好且互操作性强的技术上构建 Flash 项目。
French 承认其他语言中相似的解决方案也是存在的,他说:
在 ActionScript 中,我知道 DENG 项目,但已没有人再维护它了。它是用 ActionScript 1.0 编写的。Java 和其他语言也有类似的解决方案,但他们在 Web 上的应用都远不如 Flash 那么广泛。我想集中每种技术的优势,使 Flash 在这个基础上做到最好,而该基础也是 Web 的一部分。
例如,Cannonball 在以下三种情况都是最好的解决方案:
- 将 CSS3 加到任何 ActionScript 3.0 项目中
- 将任何生成 XHTML(或是生成 HTML)的 CMS 用作 Flash 内容管理器(不包括 WordPress 及 Joomla)
- 在进行 Flash 开发前的交互式的 HTML 原型的开发
当被问到 Cannonball 是如何开发的,French 回忆到“Cannonball 构建在 Mac 上,使用了 jEdit 、Flash CS3、Ant 及 Flex SDK。它使用了 Memorphic XPath library 、 BulkLoader 及 Adobe corelib 。”
关于 Cannonball 的未来发展,French 说到:
还有很多工作需要做。我现在的计划是集中于浏览引擎,尽管它受到的关注最少。接下来,我将集中于 CSS3 支持,因为它最有可能在项目外被使用。同时优化工作也会一直跟进。
InfoQ 会时刻关注 Cannonball 的进展,让你处于开发的前列。
查看英文原文: Rolling Out Cannonball
评论