浅谈基于FLEX与AIR的RIA开发技术及应用

来源:互联网 发布:linux 乌班图语言设置 编辑:程序博客网 时间:2024/04/29 23:21

C/S构架的桌面客户端应用程序往往功能强大、界面丰富、响应时间短,并具备良好的交互性和操作性,但安装部署繁琐;B/S架构的互联网应用程序也存在着不少限制,例如交互性差,响应速度慢等。RIA,一种全新的Web应用程序架构,它结合了桌面软件良好的用户体验和web应用程序易部署的优点,很快获得了企业的青睐。近年来,各大开发平台供应商相继推出新的技术来支持RIA的开发,ADOBE公司基于FlexAIRRIA开发技术及其应用已经占据了不少市场。

 

富互联网应用程序传统桌面客户端应用程序(Client/Server,简称C/S应用程序)往往功能强大、界面丰富、响应时间短,并具备良好的交互性和操作性,但系统的部署、更新和维护的困难,后来出现了浏览器客户端应用程序(Browser/Server,简称B/S应用程序),其通过把整个应用程序运行在服务器端,把界面解析为 HTML通过HTTP协议发送给客户端的浏览器,以展现给用户。B/S架构的应用程序的优势在于客户端零安装部署,B/S架构的应用程序也存在着不少限制,例如交互性差,响应速度慢等,因此我们就希望能有一种平衡,一种能够同时拥有C/SB/S架构优势的技术,于是RIA技术出现了。

 

1 RIA简介

 

RIA全称为Rich Internet Application,富互联网应用程序。RIA的概念最早由Macromedia2004年发布Flex的时候提出。

 

一句话,RIA就是把传统Web应用程序和桌面程序的优点结合在一起,既提供了丰富的客户端体验,又可以轻易部署和自由访问Internet资源。

 

2 RIA技术主要特点

 

1)在消息确认和格式编排方面提供互动用户界面,良好的用户体验;

 

2)在无刷新页面之下提供快捷的界面响应时间;

 

3)提供通用的用户界面特性如拖放式及在线和离线操作能力;

 

4)跨平台兼容性;

 

5)一次加载,多次使用;

 

6)客户端数据缓存功能;

 

7)多个应用同时工作;

 

8)快速的开发和部署;

 

9)高度的个性化可配置性;

 

10)具有通信包括实时互动的声音和图像的特点。

 

3 基于FLEX/AIRRIA开发技术

 

近年来,各大开发平台供应商相继推出新的技术来支持RIA的开发,AjaxSilverLight,JavaFXLaszlo,FlexApolloAIR,竞争异常激烈,ADOBE公司的产品FlexAIR占据了目前RIA市场的较大份额,是目前RIA领域里最有竞争力的开发技术。

 

3.1 FLEX技术

 

如果说RIA技术的产生是源于谋求C/S架构与B/S架构之间的平衡,吸取两者的优点,那么FLEX技术就可以看作是将传统的桌面应用程序搬到浏览器里运行的技术。我们可以在浏览器里运行客户端程序,载体就是Flash player

 

FLEX技术包含两种重要的语言:

 

1)MXML

 

Flex开发者使用直观的MXML来定义丰富的用户界面,MXML是基于XML的一种描述语言。

 

2)ActionScript

 

Flex开发者利用ActionScript来编写程序逻辑,ActionScript是用于Flash应用开发的面向对象的编程语言。

 

Flex技术开发出丰富的用户交互界面,并最终编译成SWF格式的客户端应用程序,客户端应用程序在浏览器的Flash插件中运行。据统计有98%以上的浏览器都安装了Flash player

 

3.2 AIR技术

 

如果说FLEX技术将传统的桌面应用程序搬到了浏览器里运行,那么AIR技术就是将过去浏览器里的网络应用搬到了桌面上像客户端那样运行。

 

Adobe Integrated Runtime (AIR) 是一个跨操作系统的运行时,利用现有的Web开发技术(Flash,Flex,HTML,JavaScript,Ajax)来构建富Internet应用程序并部署为桌面应用程序。用户使用AIR 应用程序的方式和传统桌面程序是一样的,当运行时环境安装好后,AIR 程序就可以其他桌面程序一样运行了。

 

3.2.1 AIR的特点:

 

1)本地运行,类似桌面应用程序。

 

2)跨平台,类似java技术,在不同的操作系统上有对应的虚拟机支持。

 

3)开发是基于现有的web技术,Flash/Flex/ActionScript/HTML/ JavaScript/CSS/Ajax/PDF,开发门槛较低。

 

3.2.2AIR的优势:

 

1)与传统的B/S应用相比,有客户端的优势,可以脱机运行,在需要的时候连接网络;

 

2)与传统C/S应用相比,跨平台、低开发成本;

 

3)与同样是跨平台的技术,JAVA技术相比,Flash本身能带给人的视觉体验和交互性体验是非常有吸引力的。

 

4 基于FLEX/AIRRIA典型应用

 

4.1基于FLEXRIA应用:Adobe Photoshop Express

 

Photoshop Express(http://www.photoshop.com/express/)是使用FLEX技术开发的影像编辑器,在网页浏览器内利用Flash player运行,我们可以将它理解为“Photoshop在线版”。可以使用Photoshop Express直接在线编辑图片,虽然功能没达到专业人员的需求,Photoshop Express的预设功能已经足够强大和完善,能够解决修图中90%以上的需求。

 

这个经典案例充分体现了“FLEX技术是将传统的桌面应用程序搬到浏览器里运行的技术”这一说法。

 

4.2基于AIRRIA应用:TweetDeck

 

Twitter这个为微薄系统被众多用户青睐,TweetDeck是基于Twitter网站的AIR应用程序,它曾被PCWorld评为PC World's 101 Undiscovered Freebies, Twitter搬到了桌面,这个AIR程序目前可能是最受欢迎的 Twitter 客户端。

 

这个AIR程序里的内容将与Twitter网站服务器同步更新,很好的把网站搬到了自己的桌面上。

 

5 基于FLEX/AIRRIA技术发展前景

 

随着互联网技术的发展,人们对于用户体验的要求越来越高,浏览器和桌面之间的距离正逐渐缩短,浏览器里可以运行在线版的软件,你也可以把网站搬到自己的桌面离线使用网站的部分功能。RIA技术的流行是互联网未来发展的必然趋势。3G时代的到来,RIA移动应用的发展有望为我们的移动新生活带来更多的缤纷色彩。

 

 

本文来源于 www.14edu.com(论文网) 原文链接:http://www.14edu.com/ligong/tongxin/0Z4TI52010.html

原创粉丝点击