`
Classicning
  • 浏览: 250693 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

平台的大战:RIA

    博客分类:
  • WEB
阅读更多
都说2007年成为RIA的一年,Ajax为代表的传统浏览器端技术将开始萎缩,以SilverLight和Apollo(AIR)为代表的RIA技术将开始成为主导。

看一下这一路以来的发展吧。
IE在客户端的大占有量和互联网的发展早就了B/S架构的辉煌,相较与C/S,其最大的优势就在于客户端平台的广泛性、通用性。最终用户通常不用再安装任何客户端软件就能使用该系统。同时,B/S架构也通过浏览器实现了客户端的跨操作系统。由此,各种Web前端技术开始大行其道,XHTML+CSS+JavaScript成为浏览器端开发的首选。

但是浏览器端的天生不足使此类程序在用户体验和终端的控制能力方面要比C/S架构弱了许多。在这种情况下,Ajax技术应运而生,旨在提高浏览器端的用户体验,说白了就是让最终用户在浏览器中操作时有普通客户端的感受。

不过,功能强大一步,就带来不兼容的问题。在各个浏览器之间,JavaScript和CSS的解析有比较大的差异。于是出现了很多为适应不同浏览器而进行的工作——CSS的hacks以及JavaScript各种各样的浏览器判断。

终于当人们不再满足与浏览器端较弱的表现能力和控制能力时,2007年,RIA技术开始成为焦点。

Adobe的Apollo基于Flash现有的广泛的平台,试图重振Flash系列技术在Web上的主导地位。而微软则以新发布的Vista和.NET Framework为依托,推出SilverLight平台。Sun也不甘示弱,最近展示的JavaFX也将成为这个领域的一个重要角色,而它依托的是Java的JRE平台。

其实,说到这里就很明确了。RIA确实增加了客户端的控制能力、表现能力、用户体验等等,但是一切的一切是以平台、牺牲通用性为代价的。要想实现RIA,就必须有广泛的平台基础。从这一点上说,Adobe拥有最广泛的Flash平台,从Windows到Linux,现在基本上有浏览器能上网的地方,都有Adobe Flash Player的身影,这是绝对的优势。而微软方面,毫无疑问要依靠Vista的推广来坚定他的RIA路线了,目前恐怕还难以预测Vista将在什么时候彻底取代XP成为主流,另一方面.NET Framework在已有的XP用户中推广也可能遇到Sun推广JRE一般的尴尬,也就无法确定微软RIA的前景。最后Sun的就显得弱势一些了,Java平台目前在最终用户中的普及率低的可怕,即便是JRE缩水到2-4M,也不能直接保证它的顺利分发,最终普及应用恐怕还是任重道远。另一方面不可忽略的是,Linux的用户越来越庞大,微软至今对此仍然无动于衷,选择SilverLight,就意味着完全抛弃这一部分用户,在小范围尚且可以,但是对于大型的公众应用来说,这就是绝对不合适的了。

为了实现跨平台易分发的传统B/S架构,如果真的被RIA取代,不能不说是人们观念上的一个改变:更加重视用户体验,而不是片面地强调平台的移植性(为了能让程序在IE中顺利运行而放弃原本可以在Firefox中更加好的实现,对于Firefox用户无疑是不公平的)。某种程度上说,RIA就是一种改进的C/S架构,也就是C/S重回主流的希望。不同于传统C/S几乎完全抛弃跨操作系统,RIA们顺应潮流在操作系统之上封装自己的平台,用以隔离操作系统的不同,因此Runtime成了必需。而没有Runtime的用户呢,运行都难以实现,更何谈体验?即使开发人员为了满足所有的用户需求,一口气开发了毫不相关的Apollo、SilverLight、JavaFX三个版本的客户端,也不能确保完全没有问题,因为可能还有那么一部分用户他们什么都没有。

说白了,就是平台,得平台者得天下。这一点,看微软手中的Windows和.NET Framework的不断发展和增强,看Adobe(Marcomedia)在无操作系统支持的不利情况下占据和扩展的Flash平台,再看Sun苦心多年不得要领的Java平台,可见一斑。RIA的大战就是平台大战,这场大战甚至可能会波及操作系统——当有一天RIA成为主流,在操作系统上层都是封装好的某个平台的时候,谁再去花钱购买那些昂贵的操作系统呢?
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics