站在Adobe与微软之争的RIA路口

即使有人没有听过微软的大名,相信也应该听过它老板世界首富比尔盖茨的名号。虽然现在比尔退居幕后了,但是微软依然是IT行业中一个巨无霸。至于Adobe,就不是所有人都知道它是何物了,实际上Adobe也是一个非常强大的美国IT企业。我们通常说的图片被PS过了,PS代表的就是大名鼎鼎的Photoshop图像处理软件,而Photoshop这个历史悠久无处不在的家伙,正是Adobe的主力产品。并且,N多人都知道的Flash动画,Adobe在前一段时间也成为了它的东家,因为它收购了Macromedia公司,所以Flash现在也是Adobe旗下的拳头产品之一了,据统计Flash插件已经强X了将近90%的电脑安装率。Adobe曾经放话它唯一的对手是Google谷歌,这并不是疯言疯语。

Adobe的产品还有PDF电子书等很多其他东西,不全部列举了。但是为什么要把微软和Adobe放在一起?这里不得不在提一个技术概念。RIA(Rich Internet Applications),译为富客户端程序,通俗点说就是在个人电脑实现更多有趣的功能就对了,而不是全都搬网络上的服务器端。RIA与以往其他程序最大的不同,就是强调离线操作和在线通讯,换句话讲就是,RIA希望把很多网络功能都搬到桌面上来用,并且又能做到与网络紧密联系在一起。然后,巨头们还用跨平台的特点,“肉隐肉现”地把眼光瞄到了手机上网那边。

RIA是一个技术实现层面,实际上普通的初级用户不需要懂它里面的复杂关系。用户只需要知道的,是安装一个像Flash插件那样的东西,只需安装过一次以后就能使用RIA类的软件。与Flash不同的是,这块RIA的“插件”东西这次有两种选择了,微软有一块,Adobe也有一块;微软的是WPF,也就是.Net Framework 3.0,.Net 1.0和2.0已经有一段应用历史了,.Net 3.0才是重头戏。Adobe的原本叫做Apollo,最近改名为Adobe AIR了,这两家都还在Beta测试之中。这两块Runtime的名字,注定以后会像flash这个名字那样经常与用户打交道的。比如很多诺基亚手机用户安装电脑的配套软件,就会提示需要先装.Net framework。 看到了吧,微软和Adobe已经展开了直接的正面竞争了,无可避免的两家公司是要擦出爱的火花...哦不,是擦出RIA的火花,从而展开一场在个人电脑桌面上的大战。

上面说的东西还算浅比较入门,现在我们继续说点深奥的吧。话说本人在学完PHP写代码以后,发现它很好很强大,但是尽管PHP能够处理任意的HTML网页,和凭借MySQL数据库实现大部分的存储操作,但它始终还是部署在服务器端的一种应用,对于操作浏览器等客户端方面非常力不从心。去年我曾经把眼光投向AJAX这样的Javascript组合,但是令人失望的是它尽管能实现网页无刷新,并且实现一些有点酷的功能以外,大部分时候只是一个能把浏览器卡死半天的鸡肋。由于目前各浏览器Javascript都是解释性脚本,每次打开网页都必须让电脑初始化再编译执行,效率非常低下,并且代码稍微一多,只需2MB的大小就能实现“卡吧死机”的效果。Javascript是与用户息息相关的,虽然它号称全球的电脑都支持它,实际上IE和Firfox这些浏览器本身的版本就已经五花八门,上面安装的JS版本更是混乱不堪。花这么多篇幅说Javascript,因为Javascript与RIA的关系也非常大,AJAX也可以说是一种RIA。

Flash,它也是在浏览器里面执行的,但与Javascript很不同的是它的SWF是经过二进制编译过的,执行速度相当的飞快,打开一个几十MB的Flash动画也不会感觉卡就是这个原因。Adobe AIR正是基于Flash的ActionScript核心上进行扩展的。话说回来,学完PHP以后我才发现我还需要一个更强的前端表现层。经过查询以后,发现新出现RIA正好于我想的不谋而合,可能就是因为网络化是世界大潮流吧。遗憾的是它分成了微软和Adobe两个阵营,并且两家是水火不容的,站在微软与Adobe交叉路口,开发人员只能选其中一个平台进行深入研究。(First Post On 无剑网)。

其实我个人向来对微软的东西不太感冒,除了臃肿还是缓慢,并且早在Flash 4的时候就开始接触Flash,也能写点简单的Action,只是后来没有再去深入,Flash的广泛和成熟也是Adobe阵营的一个优势之一。对于我个人来说,其实已经早就选定了Adobe了。并且现在Adobe Air更加吸引,Flash支持Socket,也能通过AMFPHP与PHP服务端进行通信,只需再掌握多Flash ActionScript 3这门语言就够了,跨平台方面,Adobe AIR也是以Java为基层的,在Linux上是畅通无阻,并且,PHP的最佳平台正好就是Linux。Adobe还可以通过部署在服务器的Flex实现更强的后端功能。Flex 目前最新版本都是Beta3测试版,Flex 国内已经有了第一本中文教程《Flex 第一步》。而AIR,2月25日那天Adobe发行了AIR 1.0正式版,不再是Beta测试了。

至于微软的.Net系列,第一是C#虽然属于ECMA标准语言系列,上手不难框架也完整,但是它配合的是MSSQL的数据库,换句话说还是离不开Windows平台,尽管比尔大叔也有跨平台的野心。Adobe AIR 目前Beta3只有11MB的大小,.Net Framerwork 是22MB,sliverlight大小还没有去了解,但是光实现C#的.Net框架和MSSQL这堆东西就已经几百MB了,另外,微软还要开发一个像flash那样的矢量化图形引擎,在推广软件安装和完善上微软就已经落后了一大截。微软已经在向广告型企业转型中,但是桌面应用这块肥肉实在太大无法抛弃,所以我估计,将来美国微软那边的affiliate计划可能会出现RIA安装这类推介,只是现在还是只允许美国地址申请。微软的优势也是有的,windows平台的使用者极多,vista系统现在也已经嵌入了部分的功能,霸主和垄断地位就是最大的武器。

RIA实现了比传统HTML网页更强力、反应更迅速、界面更华丽的Web表现。对于用户来说可以说是一次用户体验上的革命,无论是视觉上,操作习惯上都会发生比较大的变化,目前看到的主要是一些在线地图上的应用,例如购买机票或者查询地图路线,都有非常直观的图形界面和操作,并且能立即与网络服务器交换信息。整个富客户端的改变,也许最终甚至会改变用户的上网习惯,呵呵说太远了。在摆脱离了浏览器的约束以后,RIA的应用范围就大大扩展了。许多公共地区和场所都有一定的需要,这方面的市场是很值得动脑筋的。(http://www.nosword.com/)

最后还要说一点,关于RIA和SEO,目前RIA对于搜索引擎对于RIA简直是无能为力,我们所看到的搜索引擎最好成绩就是google能够识别一些文字性的Flash文件,但这是远远不够的。RIA对于搜索是一个很大的挑战,在各搜索引擎实验室里面,如果现在还没有应对RIA研发进程,相信很难应付几年后网络的发展。事实上,如果过多地从SEO角度去考虑问题,可能会扼杀了许多创意的产生,也会更多地依赖搜索引擎流量;这是我不愿意把SEO当作一种职业的原因,而只是把它看作是一种必备的能力。为了SEO而SEO,视野就变得很狭窄了。我见到有一个Flash技术高手的博客,没有怎么故意地去做链接,只靠原创的技术内容,他的PR已经飙升到7了。这一点不能不说是对SEO的一种反思。营销,确实需要更自然更有创意。

对于RIA,我脑海中浮现了许多种不着边际的构思,包括有些是从Second Life的发展学来的东西,有些可能会成为一些很有意思的诱饵。但想到最后,逐渐会觉得许多事情的原理都是相通的,无论是技术、还是生活和为人处世,都是需要更多地去考虑和布局,考虑自己和他人,考虑局势和未来,需要更多的创意。

-------------
3月底更新备注:

在对RIA的深入研究中,发现与AIR对等的应该是WPF,而SliverLight对手是Flex

AIR runtime  ---VS---  .net framework   ---VS--- JVM

AIR ---VS--- WPF ---VS--- JAVA Application

FLEX ---VS--- Sliverlight ---VS--- JAVA Applet

Flex 包扩 AIR 包括 AIR runtime

SliverLight 包括 WPF 包括 .net framework

至 于Google Gears,是互联网向桌面融合的产物,而我们今天讨论的是桌面向互联网融合。

Get TrackBack URI

相关文章:

Comments

Leave a Comment

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Recent Comments

Guest Book

My Fav