应用前景
优势
作为新一代的 富客户端互联网技术的佼佼者,Flex这种技术已经被越来越多的公司所采用,被越来越多的用户和程序员所接受。以下列出Flex十大优势:
1、Flex与Flash:可以让普通 程序员开发制作Flash成为可能
2、界面表现能力一流。
3、RIA 富客户端应用,解决了异步调用,界面无刷新, 浏览器兼容性等多项难题
4、对 流媒体的支持:Flex是被公认为流媒体技术支持最好的应用
5、平台的可用性:根据ADOBE公司的说法,Flash player在全世界一半的PC机器上安装度为99.8%
6、跨平台:Flash player能够在 linux下运行,也可以在手机上运行,所以不用担心绑死在WINDOWS上
7、对底层的可操作性:Flex能够调用底层的东西,比如可以调用摄像头实现视频,而且视频本身就嵌入在Flex应用中,由Flex player直接播放。
8、平台的后续运营和发展前景:Flex是由ADOBE公司推出的且开源
9、有充足的学习环境: Flex官方样式配置工具,可以在线配置Flex 应用程序各种控件的外观样式,该程序也是用Flex编写的,大家可以想象Flex可以做到什么程度的应用了,而且这么漂亮的界面,根本不用做任何图片和美工,都是直接用样式实现即可。
10、可以用任何你熟悉的WEB编程平台作为后台 数据访问层,可以使用 .net,php,jsp,webservice 。
11、面向对象的as3编程语言,有着和java非常类似的语言风格,非常适合学java程序员快速入门。
Adobe RIA
传统网络程序的开发是基于页面的、服务器端数据传递的模式,把网络程序的表现层建立于HTML页面之上,而HTML是适合于文本的,传统的基于页面的系统已经渐渐不能满足网络浏览者的更高的、全方位的体验要求了。而富互联网应用(Rich Internet Applications,缩写为RIA)的出现就是为了解决这个问题。
富互联网 应用程序是下一代的将 桌面应用程序的交互式 用户体验与传统的WEB应用的部署灵活性和成本分析结合起来的网络应用程序。富互联网 应用程序中的富客户技术通过提供可承载已编译 客户端应用程序(以文件形式,用HTTP传递)的运行环境,客户端应用程序使用异步客户/服务器架构连接现有的后端 应用服务器,这是一种安全、可升级、具有良好适应性的新的面向服务模型,这种模型由采用的WEB服务所驱动。结合了声音、视频和实时对话的综合通信技术,使富互联网 应用程序(RIA)具有前所未有的网上 用户体验。
Adobe RIA技术封装让现有的WEB技术得到了极大的保留,核心价值在于大大提高了产品 设计师和开发工程师的“开发体验”,强化了设计端和开发端的整合。 设计师和开发工程师们可以方便地将自己的代码平移到新的平台上,并且发布、部署的方式比之前的任何一款开发工具都方便得多,从而使RIA应用有更广大的开发者基础。
Adobe RIA技术也将带来新的桌面革命——“Desktop 2.0”,内容从Flash, HTML/CSS/JS,到PDF,几乎涵盖了时下最流行的WEB内容载体。此外,“可离线”应用模式能让用户更加安全、舒适地进行工作和娱乐。用户们不必再抱怨因网络故障而造成的信息损失,而且也可以借助本地资源更好地节省 网络资源。因此,Adobe RIA技术可以让用户将WEB 2.0应用带回桌面,创造的商业应用价值和 用户体验价值将超过以往任何技术。
定位
2011年11月,adobe宣布对移动浏览器上的 flashplayer不再支持新版本升级。并建议开发者使用html5 代替开发移动程序。
到11年12月,adobe解说已经让部分内部开发者转到html5的研究上, 但承诺继续支持 flash技术。从长远来看adobe在现在放弃部分领域 在将来可能也会逐步放弃其他flex/ flash的传统领域。不过flex极有可能被HTML5分站大量市场。
Flex和Flash的主要区别:
1、Flex侧重于应用软件、游戏的开发,flash更侧重于网页web端的展示效果。
2、Flex生成的swf文件较大,不利于网络传输,flash生成的swf文件较小,适合在网站上展示。
经典应用
1 、 eBay
eBay 桌面是构建于Adobe AIR上的一个 应用程序,程序创建了与eBay客户的持久连接。eBay 桌面实时地直接将产品供货通知和拍卖更新发布给买主,这样用户不需要打开浏览器进入eBay网站就可以获取最新信息。
2 、 纳斯达克股票市场公司
NASDAQ Market Replay使用Adobe Flex和Adobe AIR在 桌面上发布一个RIA,让金融专业人士能够重放任何时间点市场活动的详情。
3 、 纽约时报公司
纽约时报公司正在开始ShifD,一个新的RIA,允许使用者在计算机和移动设备之间切换内容。ShifD工作在Web网站和移动设备之上以及两者之间,通过一个可下载的AIR 应用程序提供给人们一种欣赏移动媒体的方式。
4 、 CCTV 网络电视奥运台
由 Adobe Flex 制作、Adobe Flash 技术加以传递前所未有的网页体验。其中包含由 CCTV 奥运媒体团队所提供的奥运赛事成绩、统计资料,以及多样化的背景数据、比赛规则及专家分析等。同时,透过社交网络功能,还能让运动迷与朋友们实时分享各种奥运赛事意见及看法。
与Flash
首先这里想说的是,Flash并非只是一个单纯的 矢量动画创作工具,而是一个凭借 脚本语言ActionScript在功能和定位上不断演变的网络应用开发工具。早在Flash MX的时候就已经成为macromedia 推广RIA战略的工具。但是毕竟Flash最初的定位是面向美术 动画设计师的 矢量动画创作工具,并不适合传统的开发人员。于是Flex成为开发者们的首选。
Flex和Flash都以ActionScript作为其核心编程语言,并被编译成swf文件运行于Flashplayer 虚拟机里。因此Flex也继承了Flash在 表示层上先天性的美感、除了视觉上的舒适感外,还天生具备方便的矢量图形、动画和媒体处理接口。
虽然Flex和Flash有众多的相似点,但是不同之处仍然很多:
1.尽管公用ActionScript,但是使用的库并不完全相同,更合适的说法是两者使用着两套具有极大“功能重叠”范围的库。
2.Flash偏向的是美术 动画设计师人员,所以更容易发挥特效处理的优势,Flex偏向开发人员,所以容易做出具有丰富交互功能的 应用程序。
3.Flash只能以ActionScript 脚本的形式开发(舞台被关联到一个称之为 document class的类里),另外舞台元素也是可以绑定脚本的,不过从软件工程的角度讲不建议这样用,Flex还可以使用称作mxml的 标记语言来描述应用的外观和行为,mxml中可以直接嵌入ActionScript脚本。
4.由于第三点而造成的两者市场定位不同,Flex是面向企业级的网络 应用程序,Flash则面向诸如平面动画、广告设计等多媒体展示程序。
5.借助Flash Lite这一移动设备上的Flashplayer,Flash可以开发移动应用,Flex则不行。
6.Flash的编程模型是基于 时间轴的,Flex的则是基于 窗体,虽然它运行在网页里。
5技术组成
安装及配置
SDK2:FLEX标准开发组件,包含flex框架;
Flex Charting 2:FLEX图表组件
Flex Builder 2:开发FLEX应用的集成开发工具,基于Eclipse;
Flex Data Service 2:FLEX数据服务,应用程序使用数据服务与服务器交换数据
技术框架
Flex技术包括以下几个主要技术框架:
1. 描述 应用程序界面的XML语言(MXML);
2. 符合ECMA规范的 脚本语言( ActionScript),处理用户和系统的事件,构建复杂的数据模型;
3. 一个基础类库;
4. 运行时的即时服务;
5. 由MXML与ActionScript文件生成swf文件的编译器。
开发步骤
以下直接来源于Flex 2.0 Beta 3的帮助文件:
使用一系统预定义组件(窗口,按钮等)来定义一个开发界面。
组织安排组件,现在用户自定义的 界面设计。
使用风格和主题来定义可见设计。
增加动态动作,如 应用程序之间的互动。
定义并在需要时连接上一个数据服务。
从 源代码生成一个在Flash播放器中运行的SWF文件。