现在一场新的技术战争已经悄然在RIA领域打响。RIA(Rich Internet Applications)富互联网应用,这个概念最早由Macromedia 在2002年提出,RIA技术使系统的界面更接近传统应用程序: 比web有更丰富展现性, 更好的操作性等。同时, RIA 还具有web的优点。
特性比较
|
传统WEB |
传统应用程序 |
RIA应用 |
界面表现 |
相对较差 |
好 |
好 |
界面操作性 |
相对较差 |
好 |
好 |
系统性能 |
负载主要在服务端 |
负载主要在客户端 |
服务端和客户端 |
网络性能 |
每次点击要刷新页面,导致速度较慢 |
视情况而定 |
可仅对需要数据进行网络通讯,但RIA应用本身需要下载, 会占用较多带宽 |
部署 |
不需部署 |
需要安装 |
无需部署, 或一次性部署 |
兼容性 |
和操作系统无关, 有浏览器即可 |
对操作系统有较高要求, 兼容性差 |
兼容性较好, 依赖于浏览器和所需插件 |
开发难度 |
相对较低 |
相对较低 |
目前开发技术仍然不成熟,需要改进 |
其它 |
|
|
部分RIA技术有较好的视频流和音频流等支持 (Flash/Silverlight) |
目前比较流行的RIA技术:
Flash/Flex
Macromedia 开发, 目前较流行的RIA技术,特别是 flash插件的市场占有率很高。Action Script3 的出现使程序员原来越接受了FLASH的开发
Silverlight/WPF
RIA的新秀, Microsoft 开发, 就目前而言, 还不成熟, 但是很有赶超flash的趋势。
AJAX
用javascript 和 dhtml + 后台post组件实现,介于纯粹和RIA 应用和和传统web之间。 对展现能力还是有较大局限。
ActiveX
较早技术, 依赖于windows, 开发较麻烦
Java (Java Applets JavaFX Java Web Start )
开发部署相对麻烦, 特别java的浏览器插件普及度低
OpenLaszlo
一个开源RIA框架。基于javascript XML 和 flash, 见:http://www.openlaszlo.org/
这个领域的传统霸主是手握Flash平台的Adobe公司;另外,还有借助Silverlight技术参战的软件巨人微软;最大的黑马则可能是刚刚推出了JavaFX的Sun公司。在这场技术版的“三国演义”中,谁将最终胜出?这场战争又将持续多长时间?它对于你我的意义何在?
静态Web页面的时代已经一去不复返了。人们的新互联网体验是一个充满了视频、动画、游戏和交互的世界。人们期望互联网就像一个视频游戏一样给我们带来更佳的体验。富展现技术现在已经成为我们的应用程序世界的一部分,掌握了富展现技术世界的公司也将掌握开发下一代网络所需要的应用程序的工具。
Adobe的Flash平台:传统霸主
毫无疑问,Adobe的Flash播放器是富展现技术领域中最具优势的选手,到目前为止,它已经在100多种设备上被安装了超过7亿多次,其中包括每一台PC和Mac机器。Flash是许多网络广告商、电影网站和YouTube类网站的最爱。
Flash是富展现领域具有统治地位的选手,这一点几乎没有什么疑问。Flash的成功很大程度上是因为它让那些比较慢的设备具有了富展现能力。举个例子来说,你可以在手提电话、MP3播放器和个人计算机上运行Flash,而且你会得到相同的用户体验。实现一个伟大的用户体验并不需要一台非常强大的硬件机器。
Adobe让Flash走向成功的第二个因素是,它一直保持让Flash非常小巧,且下载非常简单。如果你登录到一台联网的计算机上,你就可以安装和升级你的Flash版本。
为了充分利用Flash的成功优势,Adobe还推出了一系列的工具来让不同类型的用户使用,来创建使用Flash SWF导出格式的内容。其中有FLEX,这是一个为开发者推出的工具,可以让你使用一个叫做MXML的结构化元语言来创建Flash解决方案。设计者可以通过Flash Authoring工具来开发复杂的动画;而且,最后会议主持者可以使用Acrobat Connect 专业版来创建实况转播和录播的网络会议,所有这些都使用Flash平台。
无论在广度还是深度上,互联网上的Flash应用程序都在呈现爆炸式的增长。但是Adobe并没有因此而满足,并没有因此而休息。Adobe正在扩展在线Flash应用的强度来继续这一场技术之争,例如它正在使用Flash创建一个网络版的Photoshop。
微软借Silverlight打响反击战
在过去的10年中,微软一直没有停止过攻击Flash的成功的努力。这个软件巨人一直不断的推出诸如Chrome Effects、矢量标记语言(VML)和一个虚拟实境标记语言(VRML)浏览器之类的产品。但是所有这些产品以失败而告终,因为微软有个致命的缺陷:从来没有在Windows之外成功的实现这些技术。但是今年微软正在改变这种情况。一个被称Silverlight的新技术正在打破许多微软的规矩。Silverlight可以被Windows和Mac所使用,另外还有一个可以在Linux上运行的开源版本;Silverlight将可以运行在所有Web浏览器上,而不仅仅是微软的IE浏览器;而且Silverlight将可以仅通过一个文本编辑器就可以访问的语言来建立。
Silverlight的核心是一个叫做XAML的XML语言。这个语言听起来有些熟悉,因为相同的XAML也是微软的新Windows展现层的核心语言,就是微软的这个新Windows展现层技术让其新操作系统Vista具有如此酷的外观效果。XAML可以被用户使用诸如微软的Expression Blend等工具轻松的编辑,甚至你使用一个记事本也可以实现对它的编辑。
Silverlight的最初发布版的一个比较大的成功是,它可以通过互联网以1080P质量播放高清视频。Adobe也曾表示实现这个功能,但是至今还没有发布达到这种质量标准的Flash播放器升级。
预计定于2008年第二季度发布的Silverlight新版将再出大手笔,将合并微软成功的.NET框架的关键组件,以让C#和VB.NET开发者可以创建以Silverlight模式实现的定制化应用程序。
毫无疑问,微软已经让Silverlight走向了正确的方向。Adobe公司要对这个新的竞争对手加以重视了。
Sun的JavaFx会成为黑马吗?
在比赛中通常会有黑马出现。有时候它可以赢得最后的胜利,有时候它会以失败告终,但是它肯定是值得关注的。在这场富展现技术之争中的黑马极有可能是Sun公司。Sun正在发布它的Java语言的扩展,来让开发者可以实现Flash和Silverlight所实现的富展现能力。
Sun的首席技术官Bob Brewin表示,“JavaFX是对Flash和Ajax增长的一种回应。”在RIA的时代,Sun也是紧随着这种新技术不断发展的。虽然Flash现在的应用非常广泛,但它永远不能交付Java类库的大部分功能,JavaFX却是可以的。所以JavaFX仅仅是Sun对于现在这种流行技术的“回应”。
Sun正在使用的部署战略与Adobe和微软有所不同。获得JavaFX的第一个设备是移动电话。的确,现在Sun还不清楚JavaFX是否最终将也被应用到个人计算机中。这可能是Sun失败的地方,也可能是它最后成为胜利者的关键因素,因为你别忘了,现在全球移动电话的数量要是个人计算机数量的两倍。
RIA技术应用之争将超出Web之外
这三种技术全是致力于让用户的Web体验达到一个更完美的层次。这并不意味着它必须通过一个Web浏览器来体验。Adobe和微软已经公然表示,它们希望将它们的技术应用到浏览器之外的更广范围。Adobe正在利用AIR,Adobe Intergrated Runtime,来让开发者可以创建跨平台解决方案,让网络应用软件在桌面环境执行,AIR应用软件能让使用者离线工作,并可用拖曳方式,将图像或文字等项目,在网络与桌面应用软件间移动。
微软也正在努力将Silverlight的应用扩展到桌面之外,实现Silverlight到移动设备上。富展现技术的潜力似乎仅仅显露出一点。还有很大的空间让Adobe、微软和Sun来挖掘,毫无疑问,这三家公司将为了赢得开发者而展开激励的战斗。
本文来自CSDN博客http://blog.csdn.net/wkyb608/archive/2009/06/16/4272896.aspx