




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Adobe Flex 简介ISAS项目文档Adobe Flex 简介目录Adobe Flex 的简介3摘要:3关键词:31.Flex的发展历程41.1Flex的起源41.2 RIA41.3由Flash ActionScript说起51.4 Flex概念的引入52.Flex工作原理72.1 Flex 运行机制72.2 Flex的技术框架82.3 Flex元件MXML92.4 Flex组成元素92.5 Flex类库93. Flex优势和特色103.1 Flex与其他技术的比较103.1.1 HTML/JavaScript/Ajax103.1.2 Java/Java FX113.1.3 Silverlight/XAML113.2不需要进行浏览器兼容测试123.3不再有布局界面的痛苦123.4简单的域验证123.5丰富的媒体支持133.6实现表现层和内容的真正分离133.7 Flex开发环境133.8 CSS 支持144.Flex与同类的区别144.1 Flex与Flash的关系144.1.1 Flex与Flash的不同144.2 RIA与Flex154.2.1 Flex与RIA的联系154.3 Flex Web应用程序和传统web应用程序的区别164.4 与Silverlight的区别17总结17相关文献:18Adobe Flex 的简介摘要:Flex是一个基于组件的开发框架,可以生成一个由Flash Player运行的富互联网应用程序。Flex将基于标准的语言和各种可扩展用户界面及数据访问组件结合起来,使得开发人员能够构建具有丰富数据演示、强大客户端逻辑和集成多媒体的应用程序。Flex是一个建立在Flash平台上的富客户端应用开发工具包,Flex 作为富 Internet 应用(RIA)时代的新技术代表,自从 2007 年 Adobe 公司将其开源以来,Flex 就以前所未有的速度在成长。很多公司,包括 IBM 、Yahoo、淘宝、eBay、纳斯达克股票市场公司、纽约时报公司、CCTV网络电视奥运台(Olympic Network TV Station) 等都以Flex为平台应用。丰富的WEB、桌面应用,是未来10年发展主趋势。关键词: Adobe Flex Flash ActionScript RIA1.Flex的发展历程1.1Flex的起源说起Flex的起源,先要从富互联网应用程序RIA(Rich Internet Application)说起。Rich Internet Application这个词语最初由Macromedia公司(2005年被Adobe收购)于2001年初提出,目的在于将桌面应用程序的强交互性与传统Web应用的灵活性结合起来,为用户带来全新的体验,也即是说,RIA的提出为Web应用程序提出了一个新的概念。Flex,就是针对于这一应用而产生的。1.2 RIARIA(Rich Internet Applications)富互联网应用程序 ,具有高度互动性、丰富用户体验以及功能强大的客户端。富互联网应用程序是下一代的将桌面应用程序的交互式用户体验与传统的WEB应用的部署灵活性和成本分析结合起来的网络应用程序。富互联网应用程序中的富客户技术通过提供可承载已编译客户端应用程序(以文件形式,用HTTP传递)的运行环境,客户端应用程序使用异步客户/服务器架构连接现有的后端应用服务器,这是一种安全、可升级、具有良好适应性的新的面向服务模型,这种模型由采用的WEB服务所驱动。结合了声音、视频和实时对话的综合通信技术,使富互联网应用程序(RIA)具有前所未有的网上用户体验。Adobe RIA技术封装让现有的WEB技术得到了极大的保留,核心价值在于大大提高了产品设计师和开发工程师的“开发体验”,强化了设计端和开发端的整合。设计师和开发工程师们可以方便地将自己的代码平移到新的平台上,并且发布、部署的方式比之前的任何一款开发工具都方便得多,从而使RIA应用有更广大的开发者基础。1.3由Flash ActionScript说起Flash Player最早为Macromedia公司产品,作为因特网页的矢量动画平台,早期的Flash Player主要是面向娱乐功能和多媒体应用。其后推出了ActionScript语言做为补充,通过ActionScript可以对Flash Player中的动画和控件进行更为复杂的逻辑控制。2000年8月Macromedia 推出了Flash 5.0,并推出了全新的ActionScript语言,这是ActionScript的一次飞跃,ActionScript的语法已经开始定位并发展成为一种完整的面向对象的语言,并且遵循ECMAScript的标准。随后2004年Macromedia推出被收购前的最为经典的版本Flash MX 2004,在这个版本中ActionScript升级为2.0版本,改造了ActionScript 1.0中的不完善,使其完全支持Class、Interface等面向对象的语法表达,第一次真正意义上具有了和Java、C+一样的编程能力,同时第 一次引入了Flex的概念即Flex 1.0。1.4 Flex概念的引入2005年12月Adobe收购Macromedia公司,由此带了的巨大变革,Adobe将其打造为新一代的RIA,2007年3月27日发布 了Flash 9.0,Flash 9.0支持全新脚本语言ActionScript 3.0,ActionScript 3.0是Flash/Flex历史上第二次飞跃,从此以后,ActionScript终于被认可为一种“正规的”、“完整的”、“清晰的”面向对象语言。新的ActionScript包含上百个类库,这些类库函盖了图形、算法、矩阵、XML、网络传输等诸多范围,为开发者提供了一个丰富的开发环境基础。随着ActionScript3.0而来的是新的Flash RunTime虚拟机(AVM2.0),AVM2.0的运行效率是AVM1.0的几倍。在这个版本中同时推出Flex 3.0和引入AIR的概念。可以说是对Macromedia的原有产品彻底的一次升华,变化如此之大,以至于ActionScript 2.0到ActionScript 3.0间、Flex 2到Flex 3、VM1.0到VM2.0间并不兼容。针对Flex/AIR的开发,Adobe公司出品了基于Eclipse的Flex Builder 3.0。传统的程序员在开发动画应用方面存在困难,Flex 平台最初就是因此而产生。Flex 试图通过提供一个程序员们已经熟知的工作流和编程模型来改善这个问题。 Flex 最初是作为一个J2EE(Java 2 Platform, Enterprise Edition)应用,或者可以说是JSP(JavaServer Pages)标签库而发布的。它可以把运行中的MXML(Flex标记语言)和ActionScript编译成FLASH应用程序(即二进制的SWF文件)。最新版的FLEX支持创建静态文件,该文件使用解释编译方式并且不需要购买服务器许可证就可以在线部署。 Flex的目标是让程序员更快更简单地开发RIA应用。在多层式开发模型中,Flex应用属于表现层。 Flex 采用GUI界面开发,使用基于XML的MXML语言。Flex 具有多种组件,可实现Web Services,远程对象,列排序,图表等功能;FLEX内建动画效果和其它简单互动界面等。相对于基于HTML的应用(如PHP、ASP、JSP、ColdFusion及CFMX等)在每个请求时都需要执行服务器端的模板,由于客户端只需要载入一次,Flex应用程序的工作流被大大改善。Flex的语言和文件结构也试图把应用程序的逻辑从设计中分离出来。 Flex 服务器也是客户端和XML Web Services及远程对象之间通讯的通路。2.Flex工作原理2.1 Flex 运行机制Flex只是一种客户端技术,同时也属于Flash平台。Flex代码最终被编译成SWF文件运行在Flash播放器(Flash Player)中。SWF文件可以单独在用户终端运行,但是必须要安装Flash Player。它也可以在各种流行的浏览器中运行,但浏览器必须要安装Flash Player插件。 SWF文件是一个压缩文件,可以通过Flash Player呈现出来。由于SWF文件很小,所以有很快的网络下载速度。用户要想运行一个Flex应用程序,只需要通过网络或者其他途径获取SWF文件,就可以运行在装有Flash Player插件的浏览器中。Flex最终编译成SWF文件是通过Flex Software Development Kit(SDK)实现的。Flex SDK是一套开发包工具,其中包括了Flex编译器、文档工具和用户界面(UI)组件库。Flex开发者可以使用Flex SDK把Flex代码编译成SWF文件,然后部署到浏览器中。通常情况下,SWF文件会嵌入到HTML代码中,然后放到Web服务器上,以供终端用户下载。2.2 Flex的技术框架Flex框架等同于Flex类库,同时他是一个能被Flex应用程序使用的ActionScript类的集合。Flex框架完全利用ActionScript类写成,并且定义了空间,容器和管理器等,用于简化RIA的构建。Flex可以应用于J2EE和.net平台。Flex开发者使用只管的基于XML个MXML来定义丰富的用户界面。该语言由Flex服务器翻译成 SWF格式的客户端应用程序,在Flash Player中运行。Flex将基于标准的语言和各种可扩展用户界面及数据访问组件结合起来,使开发人员能够快速构建具有丰富数据演示,强大客户端逻辑和集成多媒体的Flex应用程序。使用Flex构建的应用程序能够在常见的桌面平台上运行,支持对应用程序外观进行完全自定义,并支持各种连接到后端数据和服务的方法。2.3 Flex元件MXMLMXML是一种基于XML的标记语言,用来描述屏幕布局。除了屏幕布局,还可以描述效果,过渡,数据模型以及数据绑定.MXML非常健全,甚至可以用来构建完整的应用程序。MXML提供开发人员一个无需写代码的所见即所得的编程方式,用来快速构建Flex程序。2.4 Flex组成元素Flex表现层服务器包含Flex应用框架和Flex运行服务,而Flex框架又包含MXML描述语言和ActionScript程序语言和Flex类库,MXML是基于xml的标记语言。用于应用程序用户界面的布局。ActionScript定义客户逻辑和程序控制.是一种类似于javascript的墙类型面向对象语言,可用于定义事件监听器和处理器,设置或检索组件属性值,一级处理回调函数等。ActionScript是Flash Player可以理解的编程语言,也是Flex应用的基础。ActionScript也是MXML的基础,可以完成MXML所不能完成的任务(如控制事件,控制错误,绑定数据对象到Flex控件,定义用户组件)。2.5 Flex类库Flex类库提供可扩展的组件(如容器和控件),数据绑定,行为以及其他功能。Flex类库则包含了Flex组件,管理器和行为控制。3. Flex优势和特色3.1 Flex与其他技术的比较Flex是一种混合的技术,这种语言技术的设计借鉴了其他优秀的现代标准语言,如XML、Java等。其中,MXML就是基于XML构建的描述界面的语言,同时借鉴了HTML等Web技术。而ActionScript也是大量的借鉴了JavaScript脚本和Java语言的语法组成。3.1.1 HTML/JavaScript/AjaxFlex技术是在Web技术发明之后开发出来的。Flex技术中的MXML语言就是基于XML的,并且借鉴了HTML描述语言。所以,MXML和HTML的作用实质上是一样的,都是为了更好地描述界面布局和组件样式。不同的是,MXML采用了更加先进的设计模式,使得MXML代码更容易阅读和编写。Flex中的ActionScript是一种脚本语言,用来处理客户端的逻辑运算。ActionScript的设计同样也参照了JavaScript,与JavaScript作用一样。并且,ActionScript和JavaScript两者的语法也极其相似,这使得开发者学习新的ActionScript语言的门槛降低。Ajax是利用JavaScript和XML技术,出现的一种新的代码框架技术。与Flex一样,其在客户端可以实现很多功能。不同的是Ajax最终还是使用XML来描述界面,而Flex则是编译成SWF控件运行在浏览器上。所以Flex具有更好的表现性能以及更好的兼容性。3.1.2 Java/Java FX Flex是一个类似于Java和Java Swing的平台。Flex中的脚本语言ActionScript与Java上的语法和结构都极其相似。它继承了Java中包的概念,在设计中,参照了Java的大部分 特性。同Flex一样,Java也可以把应用程序部署到Web上运行。但是编译之后的文件却远比Flex大,因为Java的运行环境JRE和开发包JDK拥有比Flex多得多的类库,而且这些类库在客户端可能不需要。所以,很多Java开发者开始了解并学习Flex,计划把Flex和Java更好地结合起来。3.1.3 Silverlight/XAMLSilverlight是微软公司的富网络应用程序的解决方案。Silverlight的XAML描述语言同样也是基于XML设计的。XAML就相当于Flex中的MXML,两者的功能一样,而且语法也类似。Silverlight客户端所使用的逻辑语言更加广泛,因为它是基于.NET框架设计的。这些语言包括C#、JScript、Visual Basic等。不过Silverlight技术刚刚推出不久,其中的很多功能有待完善。而且,在客户端需要安装Silverlight控件。3.2不需要进行浏览器兼容测试AJAX的一个特点就是它比普通的XHTML和一些CSS要复杂的多。浏览器兼容性测试从此变成了可怕的梦魇。因为Flex应用程序编译成Flash SWF文件,所以不论用什么样的操作系统和浏览器,它都同样下载为像素。只要是解析过XML的人都知道解析的痛苦。Flex 2中的Actionscrip包含了针对XML的Ecmascript或者叫做E4X。它通过把XML看作一个原始变量使得操作一个XML对象变得简单。3.3不再有布局界面的痛苦所有热衷于使用CSS布局的都知道试图适当地布局那些DIV标签时的痛苦。确实很痛苦。Flex优势在于通过使用基于容器的Flex标记语言(MXML),把确定的(fixed)和流动的(liquid)布局设计转变成想要的布局结果变得非常容易。3.4简单的域验证所有创建过商业程序或者电子商务应用程序的人都处理过表单域验证、邮政编码、信用卡号。这些在Flex中都是内置的并且很容易使用。3.5丰富的媒体支持Flash平台让以前占统治地位的Web媒体播放器(Real,Windows Media)完全失去优势。Flash平台是轻量级的,并且工作时不需要安装任何东西。Flex使得人们在程序适当的地方嵌入音频或者视频内容变得简单。3.6实现表现层和内容的真正分离多年来,开发者都在说把数据从表现层分离出来的优点。当然,在Web世界中,说总比做容易。绝大多数的web应用程序都是和一些形式的动态内容有关联的模版。Flex优势还在于使用Flex,可以把数据巧妙地从任何地方(简单的XML,SOAP,等)中取出并帮定到界面中的元素上。这样做可以促进更严格的分离。服务器现在只传输数据就行了。当这样做的时候,不只拥有了一个应用程序,还拥有了一个API。3.7 Flex开发环境调试是件烦人的工作而且没有任何有关AJAX/Javascript的可视化的开发环境。Flex Builder 2是一个Flex可视化编程环境,它是像Visual Studio和Jbuilder一样的已经产业化的IDE。它是建立在Eclipse IDE平台的基础上的。3.8 CSS 支持在Arc90已经得到了一些CSS天才,也很高兴的看到Flex的很多样式也是由CSS控制的、颜色、字体、倾斜度。Flex优势在于那些CSS技巧仍然可以应用到皮肤和自定义Flex应用程序上。可以看一下Flex Style Explorer对Flex的CSS有个简单的认识。4.Flex与同类的区别 4.1 Flex与Flash的关系Flash并非只是一个单纯的矢量动画创作工具,而是一个凭借脚本语言ActionScript在功能和定位上不断演变的网络应用开发工具。早在Flash MX的时候就已经成为macromedia 推广RIA战略的工具。但是毕竟Flash最初的定位是面向美术动画设计师的矢量动画创作工具,并不适合传统的开发人员。于是Flex成为开发者们的首选。 Flex和Flash都以ActionScript作为其核心编程语言,并被编译成swf文件运行于Flashplayer虚拟机里。因此Flex也继承了Flash在表示层上先天性的美感、除了视觉上的舒适感外,还天生具备方便的矢量图形、动画和媒体处理接口。 4.1.1 Flex与Flash的不同尽管公用ActionScript,但是使用的库并不完全相同,更合适的说法是两者使用着两套具有极大“功能重叠”范围的库。 Flash偏向的是美术动画设计师人员,所以更容易发挥特效处理的优势,Flex偏向开发人员,所以容易做出具有丰富交互功能的应用程序。 Flash只能以ActionScript脚本的形式开发(舞台被关联到一个称之为 document class的类里),另外舞台元素也是可以绑定脚本的,不过从软件工程的角度讲不建议这样用,Flex还可以使用称作mxml的标记语言来描述应用的外观和行为,mxml中可以直接嵌入ActionScript脚本。 由于第三点而造成的两者市场定位不同,Flex是面向企业级的网络应用程序,Flash则面向诸如平面动画、广告设计等多媒体展示程序。 借助Flash Lite这一移动设备上的Flashplayer,Flash可以开发移动应用,Flex则不行。 Flash的编程模型是基于时间轴的,Flex的则是基于窗体,虽然它运行在网页里。4.2 RIA与Flex4.2.1 Flex与RIA的联系RIA相互之间关系Flex 最初是作为一个J2EE(Java 2 Platform, Enterprise Edition)应用,或者可以说是JSP(JavaServer Pages)标签库而发布的。它可以把运行中的MXML(Flex标记语言)和ActionScript编译成FLASH应用程序(即二进制的SWF文件)。最新版的FLEX支持创建静态文件,该文件使用解释编译方式并且不需要购买服务器许可证就可以在线部署。Flex的目标是让程序员更快更简单地开发RIA应用。在多层式开发模型中,Flex应用属于表现层。Flex 采用GUI界面开发,使用基于XML的MXML语言。Flex 具有多种组件,可实现Web Services,远程对象,drag and drop,列排序,图表等功能;FLEX内建动画效果和其它简单互动界面等。相对于基于HTML的应用(如PHP、ASP、JSP、ColdFusion及CFMX等)在每个请求时都需要执行服务器端的模板,由于客户端只需要载入一次,FLEX应用程序的工作流被大大改善。FLEX的语言和文件结构也试图把应用程序的逻辑从设计中分离出来。Flex 服务器也是客户端和XML Web Services及远程对象(Coldfusion CFCs,或Java类,等支持Action Message Format的其他对象)之间通讯的通路。一般被认为可能是 Flex 替代品的是OpenLaszlo和AJAX技术。4.3 Fle
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 包头市2025内蒙古包头市农牧科学技术研究所人才引进13人笔试历年参考题库附带答案详解
- 2025福建晟峵新能源发展有限公司招聘6人笔试参考题库附带答案详解
- 2025浙江钱江生物化学股份有限公司招聘12人(嘉兴市)笔试参考题库附带答案详解
- 2025年青藏铁路集团有限公司招聘(184人)笔试参考题库附带答案详解
- 2025年福建省晋江市兆壹建设发展有限公司招聘11人笔试参考题库附带答案详解
- 2025年度湖南兴湘资本管理有限公司招聘6人笔试参考题库附带答案详解
- 2025年国网冀北电力有限公司高校毕业生第二批招聘考试笔试参考题库附带答案详解
- 2025年亳州市公共交通集团有限公司招聘11人笔试参考题库附带答案详解
- 2025山东聊城市冠县国企控股公司招聘16人笔试参考题库附带答案详解
- 2025山东华鲁恒升化工股份有限公司招聘(300人)笔试参考题库附带答案详解
- 殡葬业务科管理制度
- JG/T 404-2013空气过滤器用滤料
- 大米委托加工合同范本
- 学校物品捐赠协议书
- 2025-2030国内地热能行业市场发展现状及竞争格局与投资发展前景研究报告
- 《财务报表分析课件》
- 《科研经费的使用与管理》课件
- 超市售后服务管理制度
- 贵州省考试院2025年4月高三年级适应性考试数学试题及答案
- 钢筋修复方案
- 7.1.1 两条直线相交(教学设计)-(人教版2024)
评论
0/150
提交评论