自接触Flash的那一天,我就有一个梦想:如果应用程序的UI能设计的如Flash般酷绚,那将是一种什么样的体验!而就在今天,我的梦想已经成真, 因为RIA时代已经到来!
RIA是将桌面应用程序的丰富交互式用户体验与传统Web应用的部署灵活性结合起来的下一代网络应用程序。本文主要介绍RIA技术的起源、RIA的开发平台以及对RIA未来的预测。
一、 何为RIA
Wikipedea对RIA的名词解释是丰富互联网应用程序(RIA,Rich Internet Application),其实这个名词最早是由Macromedia公司提出的。RIA是下一代的将桌面应用程序的交互式用户体验与传统的Web应用的部署灵活性和低成本结合起来的网络应用程序(参见图1)。
二、 网络应用程序的历史
网络应用程序从开始的大型主机时代过渡到以C/S和B/S架构时代得益于客户端计算能力的提升,但应用程序的表现力是一直困扰大家的一个问题。C/S结构的应用程序拥有很好的交互能力和表现力,但是部署成本高昂,B/S结构应用程序部署零成本但表现力欠佳,RIA的横空出世就是为了弥补这两者的的缺憾,帮助企业使用最低的成本搭建起令客户满意的新型应用(参见图2)。
三、 体验经济时代来临
随着人们物质生活的不断提高,人们对体验的要求也越来越高,能否满足客户更高层次的体验成为一个企业必须要面对的实际问题,这可能就是搜狐公司总裁张朝阳所说的“眼球经济”。(参见图3)就在这股IT体验大潮中,有一个公司可能是最大的赢家,那就是Apple!(参见图4)Apple公司始终坚持高端体验产品设计,每款产品都匠心独运,市值一路攀高。
四、 RIA开发技术总动员
RIA大潮风起云涌,各大IT巨头都纷纷试水,马不停蹄的推出一个又一个RIA解决方案。接下来我们就对当前几个主要的RIA开发技术进行全景分析。
1. AJAX(Asynchronous JavaScript and XML)
AJAX作为RIA大潮的一个前期过渡技术,已经得到Web开发人员的足够重视,目前可谓是风光无限。它的技术本质如下(参看图5):
> 使用DOM(Document Object Model)进行动态显示与交互
> 使用 XML and XSLT 进行数据交换与操作
> 使用 XMLHttpRequest进行异步数据传输
> 使用 JavaScript将所有这些绑在一起
受惠于AJAX的红火,JavaScript甚至被人供奉为世界上迄今为止最伟大的程序设计语言,哈哈,非常有意思。
2. AIR(Adobe Integrated Runtime)
“Adobe? AIR?, formerly code-named Apollo, is a cross-operating system runtime that allows developers to use their existing web development skills to build and deploy rich Internet applications to the desktop”.
值得一提的是,Adobe在鼓吹RIA概念的同时,也提供了一个非常强大的RIA开发工具——Flex(参见图7)。不得不说的是,Flex是完全构建在Eclipse上的一个开发工具。
3. SilverLight
“SilverLight is a cross-browser, cross-platform plug-in for delivering the next generation of Microsoft .NET–based media experiences and rich interactive applications for the Web”.
Microsoft具有全球范围内最强的IDE研发能力,此处也不例外,随着SilverLight的发布,Microsoft同时推出了自己设计系列产品——Expression Studio,其中Expression Blend(参见图9)用来专门开发SilverLight应用,看来不注重客户体验的Microsoft也发誓要在设计领域分一杯羹,这一消息对Adobe公司来说可不是一个好消息。
4. JavaFX
姗姗来迟的JavaFX是Sun公司应对RIA大潮的一个杰作。个人理解,RIA模型其实可以追溯的数年前Sun公司已经提供的Java Web Start技术,只可惜Java Web Start生不逢时。凭借Java强大的跨平台能力,没有理由不相信JavaFX会在RIA市场中叱咤风云(参见图11)。
五、 RIA未来的预测
不管我们今天称之为的RIA今后会不会成为主流应用程序,人们对开发具有高度互动性、丰富用户体验以及功能强大的客户端的追求是不变的。有理由相信,拥有成熟技术和极高市场占有率的Flash客户端将会在RIA道路上越走越远。Microsoft未来的重量级武器能否后来者居上,我们还不得而知,但是微软产品的杀伤力是绝对不能忽视的。
RIA已经为下一个10年做好了准备,你准备好了吗?
附录 网站资源列表
1. Adobe labs http://labs.adobe.com
2. 中国RIA开发者论坛 http://www.riachina.com
3. AnyFlex开发者论坛 http://www.anyflex.cn
4. JavaFX Script开源网站 https://openjfx.dev.java.net
5. JavaFX官方网站 http://java.sun.com/javafx