ADOBE与RIA平台主流技术的发展探析

2014-10-07 15:07:07 大云网  点击量: 评论 (0)
摘 要:本文通过解析RIA平台的发展,对比了几种主流的RIA开发技术,详细分析了Adobe平台的技术特点,为RIA的开发和学习提供了有意义的参考。关键词:RIA 互联网 多媒体 用户体验1 RIA平台的主流技术框架RIA
摘 要:本文通过解析RIA平台的发展,对比了几种主流的RIA开发技术,详细分析了Adobe平台的技术特点,为RIA的开发和学习提供了有意义的参考。
关键词:RIA 互联网 多媒体 用户体验
1 RIA平台的主流技术框架
RIA,即富互联网应用(Rich Internet Application)的简称,是近十年来发展速度最快的互联网前端应用技术。RIA本身不是一种具体的技术,而是一种目标:通过优化显示效果和交互模式,使互联网在线应用能够获得与本地桌面应用相同的用户体验。传统的网页无论是否采用了动态技术,在交互模式上来看始终是“牵一发而动全身”的:假如页面中仅有一个字符需要更改或者加载,那么整个页面都会在浏览器从服务器获得返回数据之后刷新。
Ajax技术(Asynchronous Javascript + XML)是第一个将传统技术整合之后得以广泛使用的RIA框架,它是HTML、JAVASCRIPT、CSS几种技术的合体,其技术核心是JAVASCRIPT脚本的XMLHTTPRequest对象。由于其仍是基于HTML来进行交互展示的技术,对用户浏览的环境要求很低,只需要IE 6.0以上的浏览器即可完美呈现。它的最大优点是在不刷新整个页面的基础上维护页面数据,降低了网络流量和无效访问。Ajax是RIA技术的第一个成熟方案,也是至今仍被广泛采用的技术框架之一。
自Flash技术以极快的速度普及网络以来,以ActionScript语言(简称AS)为基础,Adobe发展出了一整套网络开发工具。AS脚本语言从1.0逐步发展到如今的3.0,由原先简单的动画控制脚本演变为成熟的面向对象的开发语言,开发工具也从入门级的Flash变成了Flex。由于基于AS脚本的开发均通过Flash Player播放器以动画的形式展现,这就使得Adobe的RIA技术拥有HTML不可比拟的交互性和视觉冲击力,目前大部分基于浏览器的网络游戏使用的都是Adobe RIA技术。
Flash Player为Adobe带来成功的同时, Microsoft推出了银光(Silverlight)技术。银光技术在设计理念上与Adobe相似,无论开发、模式、架构都与Flash Player如出一辙,也是采用在浏览器中嵌入播放插件的方法来实现高互动性和跨平台操作。Microsoft比Adobe更重视程序员在RIA中的关键作用,不仅为设计师开发了Expression Studio工具包,还将程序员习惯使用的Visual Studio无缝集合在银光技术中,这样程序员不需要任何学习成本就可以将开发移植到银光生态圈中。
除了Adobe和Microsoft两巨头之外,很多小团队也推了各自的开发平台,如Laszlo、JavaFX等,前端浏览器也出现了Jquery、YUI等优秀的JavaScript类库。但综合来看,Adobe的RIA平台相比其它解决方案来说仍表现出明显的优势。
ADOBE 产品线的技术特点
Adobe作为一家涉足印刷、设计、桌面出版等创作软件的知名公司,在2005年收购了Macromedia之后,几乎将Flash技术发展到了极致。在RIA风靡互联网之前,Adobe充分认识到自己的产品线在交互多媒体领域的不足,将Flash技术收购之后,通过CS3、CS4两代产品的发展,已经做到了全产品线无缝衔接。2013年,Adobe推出了Adobe Creative Cloud创意套件,增加了多款新工具和在线服务并能将整个项目通过其云存储在线同步。
RIA的开发层级通常分为表现层、交互层、数据层三个层次,用于表现层的工具有Adobe Photoshop、Adobe Illustrator等图形图像领域的老牌软件。以往设计师只能通过这些软件创建单独的网页设计图,然后根据设计图在其它软件中进行HTML、CSS代码的编写工作。在最新的版本中,Adobe CC融入了全新的CSS Property功能,该功能赋予传统图形设计软件导出CSS代码的能力。设计师只要执行相应的操作,软件就可以同步生成相应的CSS代码,以便将代码复制到其它地方进行下一步的编辑,大大提高了网页的创建效率。
用于交互层的主要为Dreamweaver、Flash等传统网页制作工具,在Adobe CC中新引入了Edge Code、Edge Reflow、Muse等跨平台原型设计工具,让RIA的开发更有效率。由于RIA强调的是不同环境下相同的用户体验,Adobe特意将平板设备融入创意工作流程,甚至还为此推出了Adobe Color Lava、Adobe Eazel以及Adobe Nav这种专门用于平板设备的开发工具,将创意流程扩展到桌面以外,让设计师能创造和交付适用于几乎任何屏幕的丰富内容和应用。
Flash Builder是程序员用于构建数据层组件的主要工具,它是Adobe CC产品线对Flex的升级更新。在很多项目中,开发人员将大量时间花费在了重复编码上,在Flash Builder中能尽量降低这类重复性工作花费的时间,引入了快速完成这些工作的解决办法。如果开发者不熟悉AS和事件驱动编程,事件代码自动生成特性帮助程序员理解组件事件与对应处理代码的关联方法,节省时间。另外,优秀的代码折叠和显示方式,调试器的改进都为RIA和移动应用开发提供了良好的开发环境。
在项目管理方面,Version Cue实现了在各个软件中易用的文件存储和共享,比如作品的改动不必每次都单独存储一个文件,使用Version Cue可以记录一个文件的多种状态。这个功能的开发极大地方便了中后期项目的测试和故障排除工作。可以说,Adobe RIA平台不论是针对Web端,还是桌面应用,甚至是移动应用都有自己完整的开发平台。
 
2 RIA技术展望
今后的RIA应用也许将全面取代传统互联网应用,当然这种持续发展的状态还要延续很多年,但内容更丰富,交互性更强,用户体验更好的Web App将越来越多地代替桌面软件安装包。目前,Adobe和Microsoft都在统一不同平台间的开发流程和用户体验,浏览器市场对于W3C的标准支持度也越来越高,HTML5的出现也给广大开发群体带去希望。RIA的发展不再是对桌面和Web应用的补充而是颠覆,最终的变革一定来自整个互联网需求与服务模式的改变,桌面应用和网络应用的融合是一种必然。越来越先进的硬件伴随着越来越多的新技术将会为多态混合的运行模式提供直接的环境支持,RIA与桌面应用一体化会彻底改变人们对互联网及电子设备的概念,
 
参考文献:
[1]孙颖.Flash ActionScript3殿堂之路[M].北京:电子工业出版社, 2007.
[2]Joshua Eichorn,徐锋,陈宗恒.深入理解Ajax:基于JavaScript的RIA开发[M].北京:人民邮电出版社,2007.
[3]孙晗波.Adobe Flex 3程序设计指南[M].北京:电子工业出版社,2009.
[4]吴磊,李玮.企业级RIA项目全流程实践[M].北京:电子工业出版社,2012.
大云网官方微信售电那点事儿

责任编辑:叶雨田

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞