电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

Flex 简介


发布日期:2021/8/27
 

简介

Macromedia Flash是强大的矢量动画编辑工具在做动画起家之后Flash一直在谋求rich internet application(ria富客户端)的霸主地位最有影响的是已经推出了面向对象的编程脚本ActionScript并且建立起类似于java swing的类库和相应component(组件)Flex是通过java或者net等非Flash途径解释mxml文件组织components并生成相应得swf文件Flex的component和flash的component很相似但是有所改进增强目前Macromedia公司已经被ADOBE公司收购当前(月)的flex版本为 运用Flash是完全可以做到flex的效果的为什么还需要flex呢?这里面有两个原因为了迎合更多的developers(开发者)Flash天生是为了designer(设计者)设计的界面还有flash的动画概念和程序开发人员格格不入为了吸引更多的jsp/asp/php等程序员Macromedia推出了Flex用非常简单的mxml来描述界面给jsp/asp/php程序人员使用(x/d)html非常相似而且mxml更加规范化标准化

为了一个标准大家一定听说过微软下一代系统longhorn在longhorn推出的同时微软也会推出新的语言xaml一种界面描述语言与之相应的就是smart client和flex非常相似的东西Mxml和Xaml的也很相似… …这是人机交互技术的进步的重要体现即内部逻辑与外部界面交互相分离

Flex和其实没什么关系Macromedia用java做出来个应用把flash的技术融合到JEE里面再用net的技术做出来个net应用把flash技术融合到net里面去应该说flex解决了JEE里面和net里面最繁琐的问题那就是web 客户端的问题

什么是用RIA?

传统网络程序的开发是基于页面的服务器端数据传递的模式把网络程序的表现层建立于HTML页面之上而HTML是适合于文本的传统的基于页面的系统已经渐渐不能满足网络浏览者的更高的全方位的体验要求了而富互联网应用(Rich Internet Applications缩写为RIA)的出现就是为了解决这个问题

富互联网应用程序是下一代的将桌面应用程序的交互式用户体验与传统的WEB应用的部署灵活性和成本分析结合起来的网络应用程序富互联网应用程序中的富客户技术通过提供可承载已编译客户端应用程序(以文件形式用HTTP传递)的运行环境客户端应用程序使用异步客户/服务器架构连接现有的后端应用服务器这是一种安全可升级具有良好适应性的新的面向服务模型这种模型由采用的WEB服务所驱动结合了声音视频和实时对话的综合通信技术使富互联网应用程序(RIA)具有前所未有的网上用户体验

Adobe RIA技术封装让现有的WEB技术得到了极大的保留核心价值在于大大提高了产品设计师和开发工程师的开发体验强化了设计端和开发端的整合设计师和开发工程师们可以方便地将自己的代码平移到新的平台上并且发布部署的方式比之前的任何一款开发工具都方便得多从而使RIA应用有更广大的开发者基础

Adobe RIA技术也将带来新的桌面革命——Desktop 内容从Flash HTML/CSS/JS到PDF几乎涵盖了时下最流行的WEB内容载体此外可离线应用模式能让用户更加安全舒适地进行工作和娱乐用户们不必再抱怨因网络故障而造成的信息损失而且也可以借助本地资源更好地节省网络资源因此Adobe RIA技术可以让用户将WEB 应用带回桌面创造的商业应用价值和用户体验价值将超过以往任何技术

采用Adobe Flex & AIR技术的经典应用

eBay()

eBay桌面是构建于Adobe AIR上的一个应用程序程序创建了与eBay客户的持久连接eBay桌面实时地直接将产品供货通知和拍卖更新发布给买主这样用户不需要打开浏览器进入eBay网站就可以获取最新信息

纳斯达克股票市场公司(x)

NASDAQ Market Replay使用Adobe Flex和Adobe AIR在桌面上发布一个RIA让金融专业人士能够重放任何时间点市场活动的详情

纽约时报公司()

纽约时报公司正在开始ShifD一个新的RIA允许使用者在计算机和移动设备之间切换内容ShifD工作在Web网站和移动设备之上以及两者之间通过一个可下载的AIR应用程序提供给人们一种欣赏移动媒体的方式

CCTV网络电视奥运台(Olympic Network TV Station)

由 Adobe Flex 制作Adobe Flash 技术加以传递前所未有的网页体验其中包含由 CCTV 奥运媒体团队所提供的奥运赛事成绩统计资料以及多样化的背景数据比赛规则及专家分析等同时透过社交网络功能还能让运动迷与朋友们实时分享各种奥运赛事意见及看法

Flex与Flash的关系

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

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

虽然Flex和Flash有众多的相似点但是不同之处仍然很多尽管公用ActionScript但是使用的库并不完全相同更合适的说法是两者使用着两套具有极大功能重叠范围的库

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

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

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

借助Flash Lite这一移动设备上的FlashplayerFlash可以开发移动应用Flex则不行

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

词法分析器生成器

flex (fast lexical analyser generator) 是 Lex 的另一个替代品它经常和自由软件 Bison语法分析器生成器 一起使用Flex 最初由 Vern Paxson 于 年用 C语言 写成

Flex 手册里对 Flex 描述如下flex是一个生成扫描器的工具能够识别文本中的词法模式flex读入给定的输入文件如果没有给定文件名的话则从标准输入读取从而获得一个关于需要生成的扫描器的描述此描述叫做 规则由正则表达式和 C代码对组成flex 的输出是一个 C 代码文件——lexyyc——其中定义了 yylex() 函数编译输出文件并且和 lfl库链接生成一个可执行文件当运行可执行文件的时候它分析输入文件为每一个正则表达式寻找匹配当发现一个匹配时它执行与此正则表达式相关的 C代码

一个相似的用 C++语言 的词法分析器生成器是 flex++包含在 flex 软件包里

Flex 不是 GNU 工程但是 GNU 为 Flex 写了手册

上一篇:使toString()的创建自动化

下一篇:常见的wireless名词整理