Flex和Flash关系揭秘

开发 后端
本文向大家介绍一下Flex与Flash的关系,Flash并非只是一个单纯的矢量动画创作工具,而是一个凭借脚本语言ActionScript在功能和定位上不断演变的网络应用开发工具。

在学习Flex的过程中,你可能会遇到Flex和Flash关系问题,这里和大家分享一下,首先让我们来看一下AdobeFlex简介的概念,  Flex通常是指AdobeFlex,是一款生成扫描器的工具,能够识别文本中的词法模式。

AdobeFlex简介

        Flex通常是指AdobeFlex,是最初由Macromedia公司在2004年3月发布的,基于其专有的MacromediaFlash平台,它是涵盖了支持RIA(RichInternetApplications)的开发和部署的一系列技术组合。Flex的另一个意思是是一款生成扫描器的工具,能够识别文本中的词法模式。

  MacromediaFlash是强大的矢量动画编辑工具,在做动画起家之后,Flash一直在谋求RIA(richinternetapplication)富客户端的霸主地位,最有影响的是,已经推出了面向对象的编程脚本ActionScript3.0,并且建立起类似于javaswing的类库和相应component(组件)。Flex是通过java或者.net等非Flash途径,解释.mxml文件组织components,并生成相应的.swf文件。Flex的component和flash的component很相似,但是有所改进增强。目前Macromedia公司已经被ADOBE公司收购。当前(2008年10月)的Flex版本为3.0。(现在已经4.0了(2010年))
  
运用Flash是完全可以做到Flex的效果的,为什么还需要Flex呢?这里面有两个原因:

  1:为了迎合更多的developers(开发者)。Flash天生是为了designer(设计者)设计的,界面还有flash的动画概念和程序开发人员格格不入,为了吸引更多的jsp/asp/php等程序员,Macromedia推出了Flex,用非常简单的.mxml来描述界面给jsp/asp/php程序人员使用.(x/d)html非常相似,而且mxml更加规范化、标准化。

  2:为了一个标准。大家一定听说过微软***一代操作系统longhorn(即vista,后续的win7也是同一核心),在longhorn推出的同时微软也推出了新的语言xaml,一种界面描述语言,与之相应的就是smartclient和Flex非常相似的东西(即SilverLight)。Mxml和Xaml的也很相似……这是人机交互技术的进步的重要体现,即内部逻辑与外部界面交互相分离。
  Flex和j2ee/.net其实没什么关系,Macromedia用java做出来个应用把flash的技术融合到J2EE里面,再用.net的技术做出来个.net应用把flash技术融合到.net里面去;应该说Flex解决了J2EE里面和.net里面最繁琐的问题那就是web客户端的问题。

Flex与Flash的关系

  首先这里想说的是,Flash并非只是一个单纯的矢量动画创作工具,而是一个凭借脚本语言ActionScript在功能和定位上不断演变的网络应用开发工具。早在FlashMX的时候就已经成为macroemdia推广RIA战略的工具。但是毕竟Flash最初的定位是面向美术动画设计师的矢量动画创作工具,并不适合传统的开发人员。于是Flex成为开发者们的***。

  与FLASHFlex和Flash都以ActionScript作为其核心编程语言,并被编译成swf文件运行于Flashplayer虚拟机里。因此Flex也继承了Flash在表示层上先天性的美感、除了视觉上的舒适感外,还天生具备方便的矢量图形、动画和媒体处理接口。

  虽然Flex和Flash有众多的相似点,但是不同之处仍然很多:

  1.尽管公用ActionScript,但是使用的库并不完全相同,更合适的说法是两者使用着两套具有极大“功能重叠”范围的库。

  2.Flash偏向的是美术动画设计师人员,所以更容易发挥特效处理的优势,Flex偏向开发人员,所以容易做出具有丰富交互功能的应用程序。

  3.Flash只能以ActionScript脚本的形式开发(舞台被关联到一个称之为documentclass的类里),另外舞台元素也是可以绑定脚本的,不过从软件工程的角度讲不建议这样用,Flex还可以使用称作mxml的标记语言来描述应用的外观和行为,mxml中可以直接嵌入ActionScript脚本。

  4.由于第三点而造成的两者市场定位不同,Flex是面向企业级的网络应用程序,Flash则面向诸如平面动画、广告设计等多媒体展示程序。

  5.借助FlashLite这一移动设备上的Flashplayer,Flash可以开发移动应用,Flex则不行。

  6.Flash的编程模型是基于时间轴的,Flex的则是基于窗体,虽然它运行在网页里。
 

【编辑推荐】

  1. 探究Flex4打印功能的实现
  2. 常用FlexBuilder快捷键用法指导
  3. Flex框架Riawave的定制应用
  4. 技术前沿 Flex2.0 从零开始实现文件上传
  5. FlexBuilder开发方法及特点解析 

 

 

责任编辑:佚名 来源: hi.baidu.com
相关推荐

2010-07-27 16:03:42

Flex

2010-08-12 12:55:02

FlexFlash

2010-07-27 10:54:22

Flex

2010-08-06 09:24:44

FlexFlash

2010-08-04 08:42:28

Flex和Flash

2010-08-09 10:54:30

RIAFlex

2010-08-09 10:39:14

FlexACtionSCrip

2010-08-03 16:21:54

FlexFlash

2010-07-30 14:09:30

FlexFlash

2010-08-12 15:30:27

FlexFlash

2010-07-30 14:26:21

FlexFlash

2023-10-08 06:55:30

2010-08-06 10:15:35

Flex绑定

2010-07-29 15:09:19

Flex全屏

2010-07-28 15:29:18

Flex函数

2010-09-28 11:11:23

XML DOMHTML DOM

2010-08-13 09:47:58

Flex样式定义

2010-08-06 09:45:50

Flex事件机制

2010-08-09 10:34:05

Flex背景

2010-08-13 10:50:12

FlashFlexWebService
点赞
收藏

51CTO技术栈公众号