论文关键词:富因特网应用程序
论文摘要:富因特网应用程序是一种新型的因特网应用程序,它尝试填补本地应用程序和常规因特网应用程序之间的可用性差距。富因特网应用是web发展的必然产物,也是web应用发展的趋势和方向。本文是作者把富因特网应用技术的特性做了简单归纳。
1引言
目前大多数网络应用软件系统都是c/s形式的两层结构,由于现在的软件应用正在向分布式应用发展,b/s应用也可以进行同样的业务处理,因此,这也就是目前网络应用系统的发展方向。b/s技术开始兴起,应用的业务逻辑完全在应用服务器端实现,用户表现完全在web服务器实现,客户端只需要浏览器即可进行业务处理,这种结构更成为当今网络应用软件的首选体系结构。
2ria概述
传统网络应用程序架构是一种建立在同步概念上的应用。客户端用户必须传递一个请求,当一个请求执行完成后才能获得结果。内容显示属于表现层,是构建于html页面上,html是非常适用于内容表现的,数据处理则交给服务器端。随着新技术的不断发展,从文字、图片、音频、视频到今天包括网络游戏、互动体验、社会交往等新一代的互联网应用,网络已经成为了一个有“声”有“色”的虚拟世界。然而,用户对应用程序复杂性要求日增,传统技术已不适用。伴随互联网应用不断的发展,开发人员一直思考并构建一种比传统html更丰富的应用体验,而富因特网应用程序(richinternetappli-canons,缩写为ria)的出现就是为了解决这个问题。WWW.133229.COm
首先,简单了解一下html。它的前身是sgml(stan-dardgeneralizedmarkuplanguage),两者的不同在于html主要是应用在超链接文本上,而sgml则专注于数据交换。html代码是用ascii码编写的,很容易移植到不同的系统平台上,因此,只要能使用浏览器,就能被任何系统平台使用。在互联网上的所有能够看到的内容,都是通过html这一个标准语言描述出来的。html不是一种程序语言(如c语言),它是一种描述内容的语言。由浏览器解释html所编写的内容,进行编译并反馈给用户。
作为富客户端应用,ria拥有桌面程序的良好用户界面与web应用程序的简单开发、低成本使用以及互动多媒体技术于一体的新一代网络应用程序。它比html能实现更灵活的接门、反应速度更快和更具有亲和力的可视化效果。在这个信息爆炸的时代,web2.0的来临将为互联网提出新的挑战。如何在更加宽阔的平台上打造出更加人性、便力、表现形式丰富的产品,成为了人们关注的焦点。
ria程序设置就象使用web一样容易,客户端提供已编译的应用程序运行环境,并使用异步客户/服务器架构连接现有的应用服务器,这是一种安全、可升级、具有良好适应性的面向服务的模式。无论将来ria是否能够完全代替html应用系统,对于那些采用胖客户端技术运行复杂应用来说,ria确实提供了一种低成本的选择。
3ria技术特性
3.1桌面应用程序
(1)在消息确认方面提供互动界面。
(2)在无刷新页面之下提供快捷的界面响应时间。
(3)提供通用的用户界面特性如拖放式及在线和离线操作能力。
3.2ria具有的web应用程序特点
(1)用户友好性和交互性:ria应用程序展现给用户的界面是像安装在本地桌面系统上的gui程序界面,它有很多的复杂界面交互元素如树、菜单、网格等,用户的友好性和交互性大大增强。
(2)跨平台兼容性:ria客户端支持flash的浏览器,解析表示层服务器发来的flash内容。flash客户端是internet历史上最普及的软件,它在98%的浏览器上运行。目前主流操作系统windows,linux、苹果的os10上的浏览器ie、火狐、netscape,opera都支持flash插件。甚至还可以在一些性能良好的网络终端设备,如:pda、智能手机、机顶盒等上使用。
(3)一次加载,多次使用:目前的浏览器都用一种缓存机制,即将曾经访问过的网络资源放到硬盘上的缓存文件夹里。在用户下次访问这些网络资源时,浏览器只是向服务器寻问这些资源是否被修改,如果服务器回答没有被修改,那么浏览器会使用本地缓存的文件。在浏览器提供这种技术的背景下,ria的平台的前端一旦加载过一次,以后将不用从网络上下载。
(4)客户端数据缓存功能:ria技术是面向交互的,交互密集的应用意味着虽然用户向网络后台发送的请求的次数很多,但是所需要的数据量却相对较少。传统的网页技术只能将所需处理的数据分散的分布在每个页面中,随着页面的跳转,依次从后台将数据从服务器端取回。在这种情况下,用户即使完成一组简单的功能操作,浏览器端同常也需要向服务器发送多次数据请求,即增加了服务器的负载,又降低了用户的操作效率。ria平台基于ria技术所赋予的强大客户端处理能力,可以缓存大量的客户端数据,提供了一定程度的离线操作功能。这样,在提高了用户交互效率的同时,还能较大程度的降低服务器的负载。
(5)高效的网络数据信息传输:客户端与服务器端主要采取xml数据和webservices两种方式交互,在这两种方式下,客户端和服务器端仅仅传递必要的数据信息,这与传统html网页的交互数据和显示信息混在一起传输的方式相比他大大降低了数据通讯量,降低了对网络带宽的要求。
(6)多个应用同时工作:利用ria平台,可以像在pc的桌面上一样,打开几个应用程序同时工作而互不干扰,也可以在不同的应用之间进行一些互操作。而在目前基于传统网页技术的应用程序中,如果存在多个应用,则几乎不可能做到这一点。
(7)快速的开发和部署:ria平台提供了一套api,利用这些api可以快速开发基于ria的网络应用。并且通过配置文件就可以将这些应用部署到ria平台中,是非常灵活的开发方式。
(8)个性化可配置性:传统的基于web的应用只能在显示风格上略作配置。然而ria平台可以最大限度的给予用户个性化的定制空间,用户不仅可以定义显示风格、还可以定义平台上应用的种类、个数、大小。
(9)具有通信包括实时互动的声音和图像的特点,充分利用了被广泛采纳的互联网标准。
应用ria的同时也不能忽略它的一些缺点,因为ria必须运行在sandbox中,所以对系统资源的访问必须要受到严格控制。否则,可能会出现一些问题。ria总是需要诸如javascript一类的脚本。如果用户关闭浏览器的动态脚本支持,ria就不行了。客户端处理的速度。为了实现跨平台的效果,一些ria使用javascript一类的客户端未编译脚本,可能会对性能造成比较大的影响。但是如果使用经过编译的java或者flash等语言,则性能不会出现太大问题。目前,除了adobeair技术外,别的富客户端应用都不具备像传统桌面应用那样的可部署性。
不同的人浏览网站有不同的出发点和习惯,浏览一个网站的停留时长和浏览深度,并不能获知用户是否对该站点有兴趣,常见的情况是:用户被一个搜索引擎或其它网站链接引导,但浏览了半天,点击了多个内部链接,也没能找到需要的东西,然后离去,该用户只能说是偶然的访问,确切的说是无意地停留。现在流行的设计过程注重以用户为中心。用户体验的概念从开发的最早期就开始进人整个流程,并贯穿始终。
4ria的应用
近年来,ria在企业中的得到了一些应用,例如,构建企业资源计划erp,客户关系管理系统crm等等。
对于企业而言,部署ria的好处在于:
(1)ria可以继续使用现有的应用程序框架,因而无需大规模替换现有的应用程序。通过富客户端,可以轻松构建更为直观、易于使用、反应更迅速,的应用程序。
(2)ria可以帮助企业级用户提高业务效益,包括产提高销量、较频繁的重复访问、减少支持求助以及增强客户服务关系等。
目前在ria的研究上,以adobe公司最具成果。以flash而言大多数的人,几乎都认为flash只是一个动画制作与播放工具,其实flash是一整套完整的ria解决方案。
目前ria发展遇到的瓶颈,在于flash开发人员精通as编程的较少,可能是现阶段发展ria的最大难题。从另一个方面看,目前并没有一个完全针对ria的开发工具,使得制作ria的技术门槛过高,唯有开发工具的进步,才能更有效降发展ria技术。而即使在这样的情况下,仍可以看到ria的商业应用不断地出现,并且有加速成长的趋势。从这一点来看,也表明ria不单只是使用者体验的提升,它更是真实存在商业价值的提升。由此亦可看出,在未来制作ria的技术门槛降低之后,ria普及率会发展的更快。
flex是为满足希望开发ria的企业级程序员的需求而推出的表示层服务器和应用程序框架,它可以运行于j2ee和.net平台。flex表示层服务器提供基于标准的、声明性的编程方法和流程,并提供运行时服务,用于开发和部署丰富客户端应用程序的表示层。flex开发者使用直观的基于xml的mxml标记语言来定义丰富的用户界面。该语言由flex服务器翻译成swf格式的客户端应用程序,在flashplayer中运行。
5结语
就目前ria的使用情况来说,离“富因特网时代”还有很远的一段距离。今后几年时间内传统的web应用程序和ria将会共存。随着时间的推移,富因特网应用程序会拥有更加广阔的可操作空间和更高的执行效率。虽然目前主流上推广ria技术以macromedia一家公司为主,如此的推广是绝对没有办法达到大众化的目标,但是ria是未来网络上的一个不可避免的趋势,也希望未来可以看到更多更开放的技术出现,更简单更广泛的应用出现在今后的生活之中。
不管ria今后会不会成为网络程序的主流应用,人们对开发具有高度互动性、丰富用户体验以及功能强大的客户端的追求是不变的。有理由相信,拥有成熟技术和极高市场占有率的flash客户端将会在ria道路上越走越远。