RIA大潮中,那种技术可您?

上个月,给《软件世界》投了只稿。主要讨论了以RIA大潮将来到的时,我们要选择怎么的艺。目录如下:

  1. 前言
  2. RIA技术介绍与优缺点
    1. Ajax
    2. Flash/Flex/Laszlo
    3. Adobe AIR(Adobe Integrated Runtime)
    4. WPF(Windows Presentation Foundation)
    5. Microsoft Silverlight
    6. Mozilla XUL
    7. SUN JavaFX
  3. RIA技术分类与于
    1. 浏览器类
    2. 浏览器插件类
    3. 流行桌面类
  4. 那种RIA技术可你
    1. 卿是安的种类?
    2. 选取规范
    3. 找到确切自己的(目前同前景)
  5. 总结

每当互联网技术不断普及之今天,我们随处可见Web应用程序(Web
Application)的人影,甚至于Web
Application已经化为众多支出公司开各类软件系统的首选。Web
Application的出现是为化解早期C/S(客户端-服务器)系统的配置、更新与保安的不便。其通过将全路应用程序运行于劳务器端,把界面解析为HTML通过HTTP协议发送给客户端的浏览器,以表现给用户。

这种根据页面的范虽然结构简单,系统布局成本低,但与此同时为拉动了片外加的题目,比如:用户操作经验简单,不爱出丰富的功能来显示数据,应用程序需要联网才会运行,系统安全性不强,浏览器兼容性好影响系常规运作,应用程序很不便或用经过任何技术的救助才会操作客户机的资源,服务器的载荷过高要客户机的乘除能力没有尽运用,等等。

风土人情Web
Application的很多欠缺都被业界意识及,这样同样栽新的采用体系构架——Rich
Internet
Application(富互联网应用程序,简称RIA)被领了出。RIA可以充分利用客户机的计能力,又不失Web
Application那样的布局优点。这里的Rich体现了点滴单方面的义:一,用户界面的增长;二,数据模型的智能。RIA通过以客户机上单独运行一个客户端程序(这个客户端程序有或独自运行,也说不定嵌在浏览器被运行,下文会详细阐释他们之区别),极大的滋长了用户界面的增长表现,可以挺容易之以及多媒体技术构成,提高了用户体验。由于RIA需要一个独立为服务器的客户端程序,那么和传统Web
Application的不过特别区别就在,服务器都成支持RIA客户端程序正常运转的数据服务,并能为RIA提供复杂的数据处理方式,包括异步的数量传处理与脱机的数缓存机制。

咱得看来RIA实际上是运系统构架的腾飞之一个全新设计,从最早的巨型主机模型到C/S,到Web
Application,再到本的RIA,是逐步采取系统的布地域跟用户体验的。图1亮了以体系构架的提高历程:

Ajax 1

贪图1 Rich Internet Application的前进(摘自Adobe Flex:创建企业Rich
Internet Application 的意味层解决方案)

一如既往句话,RIA就是把传统Web
Application和桌面程序的优点结合在一起,既提供了丰富的客户端体验,又经网自由部署与任意看Internet的资源。

RIA的概念首先由Macromedia在2004年发布Flex的上提出,随着Ajax的普及与深刻,目前各级大开平台供应商都出了独家的RIA技术平台,以那个在RIA大潮来临之早晚,成为主流的开发技术。

而于网络社区被,对于RIA技术平台应当有着那些条件和特征,也进展了剧烈的议论:

  1. 可观的用户体验, 响应速度快和丰富的用户界面
  2. 冲互联网的盛开标准开展数量传
  3. 运转时快速高效
  4. 能够构成多种媒体格式
  5. 加上的零部件,基于事件驱动,能进行快捷开
  6. 支持并/离线的多寡传
  7. 大好的兼容性,能于强平台下运行
  8. 与服务器的交互方式必需首先支持异步的相
  9. 所因的新的媒体格式必需是因文本的,这样的格式才可能对搜索引擎友好
  10. 一经力所能及支持增量的表现(incremental rendering)
  11. 只要基于动态类型的脚本语言,例如JavaScript或ActionScript,而无是C#然的静态类型语言
  12. 假如发生90%之上的客户端部署比例。这样才会担保充分好的Web可访问性(Web
    Accessibility)
  13. 若是有较有力的开发工具
  14. 出及配备的工本未可知无限强
  15. UI组件库能够比便利之召开扩展
  16. RIA框架本身能够比便宜的举行扩展
  17. 这种RIA技术不应该造成对服务器端技术之厂商锁定

以上前言内容,由于排版和字数的由,最终并未披露。

当前言完了晚,我RIA技术介绍和优缺点中简单介绍了这些技巧,并于有以这些技术开发RIA的优缺点(仅个人观点)。

紧接着以RIA技术分类与比较受,我吃有了之类是表:

RIA技术分类 包含的技术 优点 缺点
浏览器
  • Ajax
  • 基于原有Web技术
  • 与HTML无缝集成
  • 无需学习新技术
  • 把应用程序绑定在浏览器中,受浏览器安全沙箱控制
  • 浏览器的兼容性影响应用程序的开发和运行
浏览器插件
  • Flex
  • Laszlo
  • Silverlight
  • 独立的技术
  • 与HTML部分集成
  • 丰富的界面表现
  • 特定的开发语言和工具
  • 能使用部分在Web开发中的经验
  • 需要下载插件和定制的运行时
  • 运行在浏览器中,受浏览器安全沙箱控制
  • 需要学习新技术
新型桌面
  • WPF
  • XUL
  • AIR
  • JavaFX
  • 独立完善的技术
  • 特定的开发语言和工具
  • 可独立浏览器运行(也可以运行于浏览器中)
  • 最丰富的界面表现
  • 能方便的访问本地资源
  • 可使用桌面软件开发的技巧
  • 需要安装单独的运行环境
  • 需要学习新技术

自打点的表中,可以视一个明确的特征,就是Adobe和Microsoft都以推出以浏览器被运行和独门浏览器运行的RIA开发平台。

每当三种植分类的技能中,浏览器技术是成开销RIA最直白的技艺。很多丁当Ajax是支付RIA的免次挑,Ajax的潜力还并未了挖掘出来,使用现有的Web技术(HTML+CSS+JavaScript)完成可以付出有丰富的用户界面。此类技术可直接在举行Web应用之软件开发商选择。

时桌面技术虽然统统另打炉灶,充分使用桌面开发的技艺、技巧与意见,并组成Web
Application部署好就安装之独到之处。此类技术可做Windows应用之开发商。

浏览器插件则于浏览器技术同最新桌面之间进行了亏中,既用初的艺来促成增长的界面,又能同现有的Web技术进行部分的合并。

哪些抉择切合自己之技术,主要关押如下几只地方:

  • 温馨手上底技艺,和活之布局
  • RIA技术供应商Ajax的背景
  • RIA技术上的老本
  • RIA技术利用之血本
  • RIA技术运行的频率
  • ……

最终,RIA技术平台未来市面的上进情况,供应商将会见是三国鼎立的规模:Adobe、Microsoft和SUN。Adobe依赖Flex,已经于RIA领域有矣怪好之根基,最近还要推出AIR,把手伸往了桌面系统。Microsoft向来是桌面软件开发之霸主,通过生产WPF来同样统Windows和Web界面开发技术,现在而推出Silverlight来和Flex直接竞争,并且Silverlight有不少比Flex先进的表征。SUN依靠Java的底蕴,以及在动设备上的JavaME运行时,走起来源路,也会见化为一个强劲竞争者。总体来说,Microsoft和Adobe是份额最深之供应商,SUN会稍显弱势。另外,Ajax会成为不少直在举行Web
Application的软件开发商的首选,其自然成为一个重点之RIA开发技术。

另外,大家来趣味,可以错过请同样遵照来看望。

相关文章