RIA入门知识 `bi
k/o=%
——来自InfoWorld的有关富互联网应用程序及技术的概述 ?bCTLt7k
]N_140N~
摘要:本文介绍了RIA的基础知识,这其中包括RIA的概念、组成及一些相关的工具包和框架。 zPA>af~Ej
uyvs kz\
富互联网应用程序,简称RIAs,它包括一系列的应用类型和技术。 ;9Hz{ej
RIA系列的轻量级终端是建立在AJAX(异步JavaScript和XML)或者Web 2.0应用上的。 .>oM
z&
这些应用使用异步JavaScript库为标准的Web站点添加丰富和快速响应的特性——这是AJAX的“AJA”部分。“X”是指XML,然而,现在,XML不再是被这些JavaScript库所使用的唯一数据格式,使用JSON、HTML和纯文本格式进行异步数据交换也很常见。 3?]S,~!F
基于此,许多人已经不再把AJAX当成一种特殊的简称,而是泛指那些通用的Ajax应用。 I@c0N*(
Ajax是由多种技术推动的。其中一个关键技术是动态HTML,它是一种允许JavaScript库来操作甚至已经在客户端初始化显示了的页面内容的浏览器功能。另一个关键技术是XMLHttpRequest,它是使用JavaScript从客户端向服务器端请求的轻量级的秘密通道。 2"_ 18l.
Ajax被用来扩展各种各样的网络服务器应用技术。当然,你可以用它来给静态HTML之外的页面增加数据驱动的内容,然而,将Ajax用于使用脚本网络服务器的客户端,更加合乎常规。 ;p .j
Ruby on Rails使得添加Ajax功能变得简单;微软的ASP.Net AJAX,正如它名字所暗示的,用于为ASP.Net站点增加Ajax功能,同时包含了与Visual Studio的集成,微软AJAX库也能用于其他类型的站点;手动地将Ajax库与Java/J2EE站点结合起来,需要花费一些精力,但是,使用Google Web Toolkit、TIBCO General Interface和ThinkCAP JX之类的工具与类库,这项工作会变得简单起来。 %0Vc\M@"G
RIA系列的重量级终端由通过网络进行部署的.Net智能客户端和Java Applets共同分担。无论是两者中 的哪一个,为了运行RIA,客户端机器都需要安装一个相当大(超过10MB)的运行时引擎。 {vCU^BN,k
RIA系列的中端被运行时引擎、开发工具和类库占据着,它们在客户端比单纯的Ajax做更多的事情,并且运行得更快,而且还没有.Net Framework或者Java JRE的运行开销。 V?o&])?[
Adobe Flash、Flex和Shockwave都是中型的RIA引擎。Curl也属于这一类,OpenLaszlo同样也是——尽管OpenLaszlo可以产生Ajax和Flash应用。 `oan,wq+
有几项技术正处于中端的开发中。 f3\w99\o
微软的Silverlight 1.0包含.Net框架的一个子集并且支持JavaScript;Silverlight 1.1包含.Net框架的一个更大子集并且支持即时编译C#、Visual Basic .Net、IronPython和IronRuby。 7~ILRj5Nq
Adobe Flex 3.0承诺要比Flex 2.0运行得更快,Adobe AIR也承诺提供一个跨操作系统的运行时,它允许开发者使用既有的Web开发技巧来构建和部署富互联网应用程序到桌面上。 \J\vp0[nO}
与此同时,Google Gears提供了一个本地服务器(LocalServer)、一个数据库和一个工作者池(WorkerPool),使得你可以让Web应用程序运行在桌面上。 g<