Curl 企业级 RIA 平台概览

  • Jon Rose
  • 宋玮

2008 年 6 月 18 日

话题:Java语言 & 开发架构

在本文中,InfoQ.com 就 Curl 平台的相关内容采访了 Curl 公司开发部副总裁 Richard Monson-Haefel。Curl是一个构建企业级 RIA 应用的平台。Monson-Haefel 谈到了 Curl 编程语言、IDE 以及客户端运行时。另外,他强调了在为企业构建 RIA 应用时为什么要考虑使用 Curl 而非 Adobe AIR 和 Flex。

Monson-Haefel 首先概述了 Curl 的情况:

Curl 于 1998 年在 MIT 的研究的基础上建立。它是第一个 RIA 平台,时间甚至在“RIA”这个术语产生之前。Curl RIA 平台的目标是构建高性能、关键任务业务应用。

Curl 编程语言是 Curl 平台的基础,它结合了标记语言、脚本语言以及重型面向对象编程语言三者的能力。Curl 能够简化那些需要使用这几种能力一种以上的应用的开发,因为它在一个统一语言中同时强力支持所有这三种模型。

如果开发者想要创建高交互性应用,发挥客户端机器的全部运算能力,但由于其他平台的性能限制而受挫,应该考虑注意一下 Curl。我们的许多客户发现(有时在尝试使用 Flex 之后)Curl 的安全性、功能性以及性能使他们能够做到以前做不到的事情。使用 Curl,即使高度复杂的应用也可以被实现为 RIA 形式,而且不用牺牲性能或开发速度。

如果开发者仍在评估哪个 RIA 平台最适合自己的应用,我们认为他们一定不能错过尝试 Curl 的机会。

InfoQ 询问了 Monson-Haefel 更多关于客户端运行时的问题:
Curl 公司维护了两个基于 Curl 编程语言的软件产品:Curl 集成开发环境(IDE)和运行时(RTE)。Curl RTE 是一个执行和显示 Curl 应用的引擎,就像 Adobe Flash 是运行 Flex 应用的引擎一样。

Curl 运行时比 Flash 运行时快得多,而且也能够用本地存储提供在线 / 离线及浏览器内 / 浏览器外应用。因此它等同于 Adobe Flash 加上 Adobe AIR,只是它更加安全——作为企业级的平台,它必须更加安全。我们把 Curl 和 Flex 作了基准测试进行比较,发现比 Flex 快了 8 到 10 倍。你可以去查看一下基准测试结果。

我们最近宣布了基于 Eclipse 的 beta 版 RTE 及 IDE(现在叫做 Curl Development tools for Eclipse,简称 CDE),我们把所有开发工具都移植到 Eclipse 框架上了,开启了一个全新开发者社区。

InfoQ 紧接着询问了关于客户端运行时的市场占有率问题: 
在日本,我们有超过 300 个客户以及 40 个合作伙伴,看到在日本的巨大的成功之后,2007 年 4 月 Curl 在北美整装上阵。就已知情况来讲,大多数 Curl 客户在日本,但是我们已经看到许多来自北美公司的需求,他们需要一个像 Curl 这样的高性能 RIA 平台。

关于运行时市场占有率,Curl 从没有想成为一个大量占有市场的技术,而且我们也无意与像 Adobe 这样的公司竞争,他们已经拥有大量的安装基数。大多数 Curl 应用部署在防火墙之后,因此运行时安装数量并不受关注。

Monson-Haefel 对 IDE 进行了更多的说明:
Curl 有一个全功能特性的 IDE,包括了拖拽可视化编辑、带有代码自动补全的语法敏感编辑、带有断点的调试器、大量的数据检查工具、性能剖析器、源代码控制集成、大量的文档及更多特性。Curl 还包含了一套健全的类库,在深度和广度方面与 Java 相当。

尽管 Curl 开发者中以程序员居多,但 Curl 设计者确实可以使用 Adobe Photoshop 和 Illustrator 来创作作品,然后集成进 Curl 应用中,这个过程是很容易的。

Monson-Haefel 关于如何入门 Curl 的说明:
入门的最好方法是浏览Curl 入门Web 页面。还可以查阅一些 Curl 开发者社区站点上的Curl 演示,亲自试一试并下载这个 IDE,如果 Curl 确实最符合你的应用,你还可以考虑加入Curl 社区。我们的社区响应速度极快——大多数问题都会在几个小时和更短时间内得到答复。
InfoQ 问到了关于将 Curl 与其它 RIA 技术集成的问题:
最新的 Curl 完全版是 6.0 版,与以前的版本相比,这一版更容易与其它 RIA 技术(如 JavaScript 和 Ajax)集成。Curl 应用可以在 Web 页面范围调用 JavaScript API,还可以在页面范围内被 JavaScript 所控制。6.0 版对 JSON 格式的数据流处理和创建也提供了支持。
Monson-Haefel 关于 Curl 许可方面的说明:
Curl 免费提供 BASE 版的 IDE 和部署许可,功能齐备,而且可以使用 Curl 语言及平台的全部功能创建应用。但商业应用被限制于可由公众访问的 Web 应用,不能使用 https,而且要对终端用户免费。

Curl 还提供 PRO 版的 IDE 和部署许可,在基础版本上针对企业级应用增加了安全性、性能和可维护性。

InfoQ 询问哪种类型的开发者应该考虑使用 Curl:
Curl 主要针对的是负责构建关键任务应用的企业级开发者,因此我们对所有类型的开发者都是开放的。Curl 语言实际上相当易学,而且你只需要学习一种语言就可以进行标记、样式单、以及成熟的面向对象编程。
Monson-Haefel 给出了一些例子应用:
Curl 站点上有一些 Curl 的例子应用,包括股票业绩计算器、一个Facebook 社交图表工具、以及使用了最新版本 Curl(Curl Nitro)的时间线查看器。由于焦点集中在企业级,因此我们的客户端应用不是针对公众消费的,将来我们还将给出更多的 demo。
在讨论结束之际,Monson-Haefel 说道:
有许多工具可用于开发企业级应用,即使非常流行的工具,也不可能总是所有情况下的最佳选择。理解这一点是很重要的。

Curl 是特地为企业级应用创建的,现在处于第 6 版,在企业及应用实现方面已得到有效证明;而其它工具才刚开始被用于企业级应用,其结果还存在变数。

Curl 站点上可以了解更多信息。除此之外,InfoQ 上周报道了一篇关于 Curl 基准测试方面的讨论

查看英文原文:Overview of the Curl Enterprise RIA Platform

Java语言 & 开发架构