即将到来的RIA之战 群雄逐鹿谁问鼎?
【IT168 分析评论】
有趣的是,微软是自己将它的竞争对手Flash带到这个市场上的,Flash将能在包括Macintosh和移动设备的其它平台上运行。虽然WPF/E自身也是一个功能强大且类似于Flash的东西,但它没有像Flex或OpenLaszlo那样具有自己的应用程序开发模式。后两者能够生成Flash SWF文件,提供给开发者的却只是非动画的、纯粹的代码视图的开发模式,这就是XBAP产品产生的来由。ZDNet的Ryan Stewart也在最近的一篇文章中阐述了XBAP,认为它实质上就如WPF/E平台的Flex。如何使WPF/E与XBAP得到普及则确实成为一个问题,有时甚至因此显然地削弱了微软开发模式的声望。 然而为了避免你将其剔除,想想Windows Vista即将为数百万的桌面带来的令人赞叹的特性吧,它们都是通过WPF/E、Avalon和XBAP的功能来实现的。你可以在Tim Sneath的WPF/E的XBAP演示程序(http://blogs.msdn.com/tims/archive/2005/11/28/497492.aspx)中体验到XBAP的完全风貌。忠告:你需要安装WinFx来对它们进行领会。WPF/W SDK将是免费的,尽管这个开发工具的专业版或许不是。

关于如何做到只在一个浏览器上添加RIA特性而让其它的浏览器均无法支持,确实是一个有意思的研究。XUL在用于创建基于网络的应用程序上,实际还是一种颇为像样的的描述语言。它主要的缺陷在于最初仅能为Mozilla浏览器所支持(虽然通过一些插件的添加能够在其它浏览器上使用)。虽然我认为也许我将因我所说的而遭受些许XUL社区的恶言相向,但XUL目前来说确实是一个好的模型——用于如何建立一个不为广泛接受的RIA平台,尽管有一些技术上的崇高性。如果出于某些原因,XUL社区能创建一个多插件模式用于其它浏览器,或者生成Ajax的代码,这种RIA技术的发展趋向则难以捉摸,尽管目前它的前途还是清晰明朗的。
综述:
虽然上述四种RIA平台中的三种都有可能成为你所考虑的选择,然而更为明确的是,完美地结合各种特性的一个RIA平台则更为人所求。尽管Ajax有着对XML的良好支持,但由于Flash播放器并没有包含对XML的支持能力,使得上述头两个基于插件的RIA技术对XML的支持性也相当有限。插件的垃圾收集机制与应用程序(Garbage collection和application)的表现目前看起来还是较为优越,在浏览器中图像的载入与流水线操作就仍然能更为快捷良好。
最后,在插件RIA技术中对HTML和CSS的支持也还是相当缺乏,我看到RIA应用程序为了能被赋予丰富的内容而在RIA控件前的HTML层徘徊不定。这是一个neat hack,但当你离开浏览器的能力之后却是必要的。这样的技术在RIA世界中将越来越普遍:与浏览器能力、Ajax和插件方式的RIA控件深层混合的,发挥所有它们各自的长处。Ajax是具有破坏性的(参见http://ajax.sys-con.com/read/173115.htm),但它很可能成为对大多数人来说最为出色RIA技术联合的一个好搭档。
因此,目前要为网络或企业做出一个最终的对RIA的选择是相当困难的,将各种特性联合的方式仍在积极探索中。是否这些平台中的其中之一能够在此胜出,或是我们目前尚未发现的全新的技术才能够做到,这一切尚悬而未决。由于一些着实的革新和创造力,为孕育一个战场环境创造了条件。由此可见,世界的RIA传奇也许将令人感到兴趣盎然,至少在接下来的几年内。
(原文作者:Dion Hinchcliffe 文章来源:www.zdnet.com 原文地址:http://blogs.zdnet.com/Hinchcliffe/?p=65)