- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FlashRIA开发技术
基于FlashRIA开发技术
目前,RIA技术有两个流派比较流行:Ajax和基于Flash的RIA(后面称为FlashRIA)。两者各有所长,但是在某些方面,FlashRIA表现出比Ajax更优越的特性。
第一、开发便捷性,目前应用比较多的FlashRIA平台有Adobe的Flex和OpenLaszlo,两者的目标都是要成为应用开发平台,所以从一开始就有大量的控件类库和面对对象的开发语言。这样RIA的开发就变得更加快速、容易,也能够开发出非常复杂的RIA程序。
第二、界面美观问题,FlashRIA是运行在Flash虚拟机上的,这就决定了他们天生具有很强的图形能力和动画功能,这一点是Ajax不能与之媲美的。在目前来看Ajax的RIA一般都是比较简洁的,在Ajax的RIA上加载大量的图片,然后又要处理功能逻辑,可能有些困难。相比呢,FlashRIA一般都有比较华丽的界面,可以采用大量的图片,程序绘制的过渡色等等,这些都是利用了Flash虚拟机图形引擎的强大功能。
图1 , 在线的visio
第三,图形操作能力,还是因为Flash虚拟机,FlashRIA具有矢量图形操作功能,这点是Ajax所不具有的。所以目前拥有图形处理的RIA应用基本上都是采用FlashRIA技术的,比如。
第四,多媒体展现,Flash虚拟机还有丰富的媒体能力,可以和音频、视频做到无缝的结合,如医学专业视频网站,就是采用这种方案,使信息、图片和视频紧密结合,并且能够无缝切换。
第五,版本兼容,大家都知道Ajax有浏览器版本兼容的问题,这个问题解决起来是很麻烦的。反观FlashRIA,因为都是基于Adobe的Flash虚拟机实现的,所以这个问题基本不存在。但是,Flash虚拟机也是有版本的,FlashRIA一般要求Flash版本在7以上,如果是Flash 6的话,就可能显示有问题。
第六,具体的开发细节,FlashRIA也有很大的优势。
◆ 跨域请求问题。做过Ajax开发的人都知道,XMLHttpRequest对象是不能做跨域请求的,这可能就会对多个网站组成的平台开发产生影响。但是Flash是可以做到跨域发送XML请求的,所以有些网站,为了做到跨域的请求,会在自己的网页里嵌入一个不能显示的Flash,来获得其它域名下网站的数据。
◆ Flash文件是二进制的文件,这样就可对程序源代码进行保护,从某种意义上说这是一种安全机制。如果采用Ajax的话,我们就可以从浏览器缓存里得到所有的Ajax源代码。不过,FlashRIA如果要改一点源代码,是需要重新编译的,需要花点时间。
◆ Session的问题,B/S编程都要考虑到Session问题,比如某些数据需要用户登陆才能拿到,而Session数据一般是放在Cookie里,随HTTP请求一起发送的。但是如果采用FlashRIA,它的HTTP请求是由Flash发送的,默认情况下是不会带Cookie的,所以需要在程序中自己编程设置HTTP请求的Header属性。
何时选择基于Flash的RIA
FlashRIA应该是解决非常复杂的用户交户的优秀解决方案。从感性上说,如果开发人员用Ajax解决非常困难的话,就应该考虑采用FlashRIA。
从另外的一个可以量化的标准来说,可以看一看单位面积的软件界面的功能点数,如果功能点超过5的界面部分,就应该考虑使用FlashRIA。比如,如果是普通的网页,只有文字内容的话,那么它的单位面积功能点数为0,因为没有交户功能;如果有超级链接的话,功能点数为1,因为只有一个功能,点击后跳转。
但是传统的桌面软件单位面积的功能点是很多的,例如在日历软件中,每个日历方格都会有可点击,添加事件、拖放、显示、动态计算时间、双击时间显示事件详细信息、双击方格显示单日详细日程安排等功能。那么它的单位面积功能点数可能超过15,如果要将这样的软件移植到Web上,就应该采取FlashRIA了。
RIA开发中的性能问题
1.程序响应的速度。从Ajax的角度来说,写的不好Ajax程序会有造成延时,严重的会造成浏览器假死。对于FlashRIA来说,Flash虚拟机和浏览器不是运行在一个进程空间里,所以一般不会造成浏览器假死的问题。当然这些也与程序的优劣、浏览器的兼容有关系。
2.应用程序的大小,这会影响程序加载的速度。Flex和Laszlo,因为要加载一些必须的库,所以即使是最简单的程序也会有几十K。而如果用Ajax的话,简单功能的代码,大小几乎可以忽略不计。但是,随着代码的增多,FlashRIA程序的大小增长却很缓慢。举个例子,用Laszlo分别作一个程序的两个部分,分
文档评论(0)