flex3
Flex3
1.Flex 是 Macromedia(现已被 Adobe公司收购)发布的presentation server(展现服务),它是 java web container或者 .net server的一个应用,根据.mxml文件(纯粹的xml描述文件和actionscript)产生相应的.swf文件,传送到客户端,由客户端的 flash player或者shockwave player解释执行,给用户以丰富的客户体验。现在Flex最新版本为Flex 3.0.的Macromedia Flash是强大的矢量动画编辑工具,在做动画起家之后,Flash一直在谋求rich internet application( ria 富客户端)的霸主地位,最有影响的是,已经推出了面向对象的编程脚本actionscript2.0,并且建立起类似于java swing的类库和相应component(组件)。Flex是通过java或者.net等非Flash途径,解释.mxml文件组织components,并生成相应得.swf文件。Flex的component和flash的component很相似,但是有所改进增强。
运用Flash是完全可以做到flex的效果的,为什么还需要flex呢?这里面有两个原因:1:为了迎合更多的developers(开发者)。Flash天生是为了designer(设计者)设计的,界面还有flash的动画概念和程序开发人员格格不入,为了吸引更多的jsp/asp/php等程序员,Macromedia推出了Flex,用非常简单的.mxml来描述界面给jsp/asp/php程序人员使用.(x/d)html非常相似,而且mxml更加规范化、标准化。
2,为了一个标准。大家一定听说过微软下一代系统 longhorn,在longhorn推出的同时微软也会推出新的语言 xaml,一种界面描述语言,与之相应的就是 smart client和flex非常相似的东西。Mxml和Xaml的也很相似… …这是人机交互技术的进步的重要体现,即内部逻辑与外部界面交互相分离。
Flex和j2ee/.net其实没什么关系,Macromedia用java做出来个应用把flash的技术融合到 J2EE里面,再用.net的技术做出来个.net应用把flash技术融合到.net里面去;应该说flex解决了J2EE里面和.net里面最繁琐的问题那就是web 客户端的问题。微软比较卑鄙,在ie里面built-in(事先安装好了)很多控件,可以被.net调用比如datagrid(gridview),java就没有办法啦,只能用最原始的html一个tag一个tag地print,真是头疼,还有客户端的javascript是最难调试的,不论java还是.net都束手无策。
3、与FLEX学习相关
[相关链接]
Adobe公司Flex主页:http://www.adobe.com/cn/products/flex/
Flex中文社区:http://www.flexcoders.cn/
蓝色理想网站的Flex入门教程:http://www.blueidea.com/tech/multimedia/2004/2130.asp
一个不错的 Flex中文资源站点:http://www.airia.cn
《Flex 3.0 RIA开发详解:基于ActionScript3.0实现》 黄曦 电子工业出版社 2008
《Flex与ActionScript编程》. 王睿. 机械工业出版社. 2008
什么是用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应用带回桌面,创造的商业应用价值和用户体验价值将超过以往任何技术。
采用Adobe Flex & AIR技术的经典应用
eBay(http://desktop.ebay.com)eBay桌面是构建于Adobe AIR上的一个应用程序,程序创建了与eBay客户的持久连接。eBay桌面实时地直接将产品供货通知和拍卖更新发布给买主,这样用户不需要打开浏览器进入eBay网站就可以获取最新信息。
纳斯达克股票市场公司(https://data.nasdaq.com/mr.aspx)
NASDAQ Market Replay使用Adobe Flex和Adobe AIR在桌面上发布一个RIA,让金融专业人士能够重放任何时间点市场活动的详情。
纽约时报公司(http://shifd.com)
纽约时报公司正在开始ShifD,一个新的RIA,允许使用者在计算机和移动设备之间切换内容。ShifD工作在Web网站和移动设备之上以及两者之间,通过一个可下载的AIR应用程序提供给人们一种欣赏移动媒体的方式。
关于ACAA教育
Flex - 词法分析器生成器
flex (fast lexical analyser generator) 是 Lex 的另一个替代品。它经常和自由软件 Bison语法分析器生成器 一起使用。Flex 最初由 Vern Paxson 于 1987 年用 C语言 写成。Flex 手册里对 Flex 描述如下:
“flex 是一个生成扫描器的工具,能够识别文本中的词法模式。flex 读入给定的输入文件,如果没有给定文件名的话,则从标准输入读取,从而获得一个关于需要生成的扫描器的描述。此描述叫做 规则,由正则表达式和 C 代码对组成。flex 的输出是一个 C 代码文件——lex.yy.c——其中定义了 yylex() 函数。编译输出文件并且和 -lfl 库链接生成一个可执行文件。当运行可执行文件的时候,它分析输入文件,为每一个正则表达式寻找匹配。当发现一个匹配时,它执行与此正则表达式相关的 C 代码。”
一个相似的,用 C++语言 的词法分析器生成器是 flex++,包含在 flex 软件包里。
Flex 不是 GNU 工程,但是 GNU 为 Flex 写了手册。
相关书籍:
O'Reilly, John Levine, Tony Mason, Doug Brown: lex & yacc, Second Edition, October 1992