RIA
RIA的优势
RIA 具有的桌面应用程序的特点包括:在消息确认和格式编排方面提供互动用户界面;在无刷新页面之下提供快捷的界面响应时间;提供通用的用户界面特性如拖放式(drag and drop)以及在线和离线操作能力。RIA具有的Web应用程序的特点包括如:立即部署、跨平台、采用逐步下载来检索内容和数据以及可以充分利用被广泛采纳的互联网标准。RIA具有通信的特点则包括实时互动的声音和图像。

客户机在RIA中的作用不仅是展示页面,它可以在幕后与用户请求异步地进行计算、传送和检索数据、显示集成的用户界面和综合使用声音和图像,这一切都可以在不依靠客户机连接的服务器或后端的情况下进行。

对于企业来说,部署RIA的好处在于:
1)RIA可以继续使用现有的应用程序模型(包括J2EE和.NET),因而无需大规模替换现有的 Web应用程序。通过 Rich Client技术,可以轻松构建更为直观、易于使用、反应更迅速并且可以脱机使用的应用程序。

2)RIA可以帮助企业提供多元化的重要业务效益,包括产提高销量、提高品牌忠诚度、延长网站逗留时间、较频繁的重复访问、减少带宽成本、减少支持求助以及增强客户关系等。

4. RIA目前的发展态势
在过去的两到三年中,Web开发人员一直是想构建一种比传统HTML更丰富的客户端:这是一个用户接口,它比用HTML能实现的接口更加健壮、反应更加灵敏和更具有令人感兴趣的可视化特性。RIA技术的出现允许我们在因特网上以一种像使用Web一样简单的方式来部署富客户端程序。无论将来RIA是否能够如人们所猜测的那样完全代替HTML应用系统,对于那些采用C/S架构的胖客户端技术运行复杂应用系统的机构和采用基于B/S架构的瘦客户端技术部署Web应用系统地机构来说,RIA确实提供了一种廉价的选择。下面介绍一下目前出现的几种比较有实力或者有特点的RIA客户端开发技术:

1) Macromedia Flash/Flex
Flash 从6.0开始Flash就逐步具备建立窗体风格的应用程序的功能。据Macromedia称已经有98%以上的桌面系统的浏览器都安装了 Macromedia Flash Player。这使得以Macromedia Flash Player为客户端的RIA可以支持种类广泛的平台和设备。
Flex是为满足希望开发 RIA的企业级程序员的需求而推出的表示服务器和应用程序框架,它可以运行于J2EE和.NET平台。Flex表示服务器提供基于标准的、声明性的编程方法和流程,并提供运行时服务,用于开发和部署丰富客户端应用程序的表示层。Flex开发者使用直观的基于XML的MXML来定义丰富的用户界面。该语言由 Flex服务器翻译成SWF格式的客户端应用程序,在Flash Player中运行。

2) Laszlo
Laszlo 是一个开源的RIA开发环境。使用Laszlo平台时,开发者只需编写名为LZX的描述语言(其中整合了XML和Javascript),运行在J2EE 应用服务器上的Laszlo平台会将其编译成SWF格式的文件并传输给客户端展示。从这点上来说,Laszlo的本质和Flex是一样的。Flash是任何浏览器都支持的展示形式,从而一举解决了浏览器之间的移植问题。而且,在未来的计划中,Laszlo还可以将LZX编译成Java或.NET本地代码,从而大大提高运行效率。

3) Avalon
Microsoft的Avalon是下一版本的 Windows(代号"Longhorn")的一部分,是一个图形和展示引擎,主要由新加到.NET框架中的一组类集合而成。Avalon定义了一个在 Longhorn中使用的新标记语言,其代号为"XAML"(可扩展应用程序标记语言)。可以使用XAML来定义文本、图像和控件的布局,程序代码可以直接嵌入到XAML中,也可以将它保留在一个单独的文件内。这与Flex中的MXML或者Laszlo中的LZX非常相似。不同的是:基于 Avalon的应用程序必须运行在Longhorn环境中,而Flex和Laszlo是不依赖于平台的,仅仅需要装有Flash播放器的浏览器即可。

4) Java SWT
Java 已经出现几年了,并且完全支持创建基于窗体的用户界面。除了 Java基础类(JFC/Swing)中的用户界面组件之外,开发人员还可以使用来自于 Eclipse Project的SWT工具箱和许多第三方工具箱进行开发。对于图形来说,可以采用Java 2D API:一个非常完整且非常复杂的图形API。你可以通过一个Web浏览器使用Java插件软件,或使用Java运行时环境中较新的Java Web Start技术来部署应用程序。使用Java建立Rich Client的主要缺陷是它的复杂性(即使对简单的窗体和图形也要求编写非常烦琐的代码)和Java浏览器插件的低市场占有率。

5) XUL
XUL (念作"zool")是一种基于XML的用户界面语言,它来自于Mozilla的开放源码项目。它可用于建立窗体应用程序,这些应用程序不但可以在 Mozilla浏览器上运行,而且也可以运行在其他描述引擎上,如Zulu(一个Flash MX组件)和Thinleys(一个Java实现)。XUL描述引擎都非常小(100K以下),它可以使用XML数据也可以生成XML数据。XUL的一个主要缺点在于它目前还没有获得一个主要商业实体的支持。XUL最大的优点在于它与Gecko引擎的集成(打开了通向大量Web标准的大门),以及与大多数其它XML用户界面描述语言相比它是一种非常具有表达力和简洁的语言。

6) Bindows
Bindow 是用Javascript和DHTML开发的Web窗体框架。Javascript用于客户端界面的显示和处理,XMLHTTP用于客户端与服务器的信息传输。Javascript在客户端的表现力不容置疑,利用Javascript几乎可以实现Windows应用程序所能干的大部分事情,XMLHTTP 一直以来常被用于实现"无刷新"的Web页面,它和 Javascript配合,可以完成数据从服务器和客户端的传输。Bindows的一个主要的缺点是它采用一次全部载入的方式来实现脚本库,在窗口的加载期,需要一个漫长的等待过程,甚至浏览器的进程会产生无响应的情况。这点Bindows根本没有遵循"用多少去多少"的准则。另外,内部大量利用了IE6 的技术,没有考虑到非IE的浏览器,限制了Bindows的流行。

5. RIA未来的发展预测
就目前RIA的使用情况来说,离"RIA时代"还有很远的一段距离。今后几年时间内传统的Web应用程序和RIA将会共存。笔者认为真正具有实力担当起普及丰富客户端应用重任的只有基于Flash Player的Flash/Flex应用程序和Microsoft的基于Avalon的应用程序。短期时间内(估计2-3年时间)可能是 Flash/Flex应用程序在新兴的网络应用程序市场上占有主导地位。随着时间的推移,Flash/Flex应用程序的市场占有率可能会慢慢被基于 Avalon的应用程序所蚕食。当然,Flash Player和Flex以后也会不断推出新版本,相对于升级操作系统或安装Avalon运行环境,人们肯定更愿意升级Flash Player。Flash/Flex应用程序也有其本身固有的软肋,Flash Player的执行效率和对本地资源的操作限制是无法和Avalon相比的,相对于浏览器中的插件而言,Avalon的应用程序拥有更加广阔的可操作空间和更高的执行效率。

目前Microsoft还在推广一种叫做Smart Client(智能客户端)的客户端程序技术,Microsoft称Smart Client是比Rich Client更优秀的客户端,因而采用Smart Client的应用程序算不算RIA目前我个人还无法作答。这里我们之所以提及Smart Client,是因为Smart Client的特性跟我们谈的Rich Client有太多的相似之处。Smart Client拥有自动更新、离线状态下的数据处理和可以使用本地资源等特征,其中的可使用本地资源这一项无疑是一大卖点,因为浏览器中的 Flash/Flex应用程序目前还无法操作本地的一些资源,比如Flash/Flex应用程序无法将网上的文件保存到本地或者修改本地文件。虽然 Macromedia的Central1.5已经可以对本地文件进行简单的操作,并且flex1.5开发的RIA也能够运行于Central上,但是如何使Central能够得到大范围推广还是个问题。相对于轻量级的Rich Client,Smart Client更接近C/S架构中的客户端程序。Rich Client和Smart Client的定位还是有所区别的:Rich Client更适合作为轻量级的基于浏览器的网络应用程序客户端;Smart Client更适合作为Windows桌面应用程序的智能客户端。

不管我们今天称之为的RIA今后会不会成为主流应用程序,人们对开发具有高度互动性、丰富用户体验以及功能强大的客户端的追求是不变的。有理由相信,拥有成熟技术和极高市场占有率的Flash客户端将会在RIA道路上越走越远。Microsoft未来的重量级武器:Avalon和Smart Client能否后来者居上让我们拭目以待。

什么是RIA,他的优势?相关推荐

  1. Silverlight HTML5 Flash - RIA技术之三足鼎立

    未来,"用户体验"将成为所有软件商业价值的首要衡量标准.拥有极好用户体验的RIA(富互联网应用)技术近些年来发展迅猛,其中以Silverlight.HTML5及Flash最受热捧. ...

  2. Adobe RIA 开发工程师认证考试大纲

    AdobeRIA 开发工程师认证考试大纲 考题数量:共90道题,考试通过正确率:60% 考试时间:120分钟  试题种类:单选题.多选题和判断题     1. Adobe RIA基础知识(2道题)  ...

  3. 多个Silverlight应用程序如何共享一个DomainService

    WCF RIA Services使用DomainService提供数据访问等服务,如果在Silverlight中使用,只要设置了WCF RIA连接,就能自动生成数据访问的客户端代理类,这为我们开发提供 ...

  4. Silverlight 入门学习笔记------Silverlight是什么

    Why Silverlight 谈起silverlight,不得不说起用户界面(UI). 随着电脑性能的不断提高,用户UI也变得变得至关紧要.用户不仅仅满足于程序完成既有的功能,而且还需要程序有一个精 ...

  5. Silverlight MMORPG网页游戏开发课程[一期] 序言

    本课程Demo在线演示地址:http://silverfuture.cn/ (随课程进度不断更新,所有资源暂时放在xap) 2010年7月20日是一个不平凡的日子,应朋友的邀请在自己的家乡广西师范大学 ...

  6. 转帖:RIA(Rich Internet Application,富互联网应用系统)

    什么是RIA? RIA(Rich Internet Applications)富互联网应用 RIA的优势 RIA 具有的桌面应用程序的特点包括:在消息确认和格式编排方面提供互动用户界面:在无刷新页面之 ...

  7. Adobe 中国区 "Adobe RIA 开发工程师认证考试" 正式发布

    近日,在湖南张家界召开的 Adobe 创意大学计划发布会上,Adobe 中国区 "Adobe RIA 开发工程师认证考试" 作为 "Adobe 创意大学计划" ...

  8. RIA开发权威指南 基于JavaFX(赠品)

    查看书籍详细信息: RIA开发权威指南--基于JavaFX(赠品) 内容简介 JavaFX是一门比较新颖的RIA技术,本书从JavaFX技术特点.开发环境.语法与开发工具入手,通过基础讲解与应用案例, ...

  9. 三种主流RIA技术之争,你该如何选型?

    前几天听说Adobe发布了用于Flash Player的RTMP(实时消息协议).乍一看,好像是一个不错的东东.号称有如下优点:支持高性能地把数据(主要是音频.视频)PUSH给Flash Player ...

最新文章

  1. datatable更新到mysql_SQL通过Datatable更新数据库表内容
  2. OpenCV重新映射Remapping
  3. C语言获取mysql表数据结构_【数据结构】实现顺序表(c语言)
  4. 【专题介绍】音视频+
  5. oracle ora 16014,ORACLE ORA-16014+ORA-00312 数据库在线重做日志没有归档
  6. mysql 中有没有临时表_MySQL 中的两种临时表
  7. 解析可变参数函数的实现原理(printf,scanf)
  8. 在nginx中配置如何防止直接用ip访问服务器web server及server_name特性讲解
  9. 阿里云新设浙江猫精人工智能科技有限公司
  10. Maven 的一个问题
  11. 先批标准化还是先激活
  12. 聚焦Java性能优化 打造亿级流量秒杀系统【学习笔记】09_防刷限流技术
  13. Oracle数据库之表空间(tablespace)---面试再也不害怕系列之一
  14. PHPstorm 函数或者方法的注释的时间和用户名,PHPstorm里函数方法的注释是没有动态时间设置的,但是看了PHP file里面有时间日期的注释,而PHP Function Doc Commen
  15. SpringDataRedis使用
  16. 群晖nas使用的端口
  17. 剑指Offer II --- 2021/9/2
  18. 联络中心演化的四个特征
  19. 一路走来,从自学到工作这一年我学到了什么?
  20. Oracle Enterprise Manager Cloud Control 13c 配置——设置页面不失效

热门文章

  1. c语言编程显示文件无效或损坏,【转】LNK1123: 转换到 COFF 期间失败: 文件无效或损坏...
  2. 第0期-通过hao123爬取导航网站
  3. Autoware介绍
  4. /proc/sysrq-trigger说明
  5. 形式与政策部分开卷题目及答案
  6. 依赖注入框架-dragger2
  7. 【文献复现】-氧还原反应塔菲尔斜率绘制(文献阅读)
  8. 系统安装时出现 \EFI\BOOT\mmx64.sfi -Not Found
  9. 解决网络连接正常,网页打不开的问题
  10. 浅谈Vue渐进式的理解