对于浅谈Flash/Flex/HTML5技术选型感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解flashhtml5区别,并且为您提供关于ACTIONSCRIPT,AS3,MXML,FLEX
对于浅谈 Flash/Flex/HTML5 技术选型感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解flash html5 区别,并且为您提供关于ACTIONSCRIPT,AS3,MXML,FLEX,FLEX BUILDER,FLASH BUILDER,FLASH,AIR,FLASH PLAYER之关系、CFI Flash, JEDEC Flash ,Parellel Flash, SPI Flash, Nand Flash,Nor Flash的区别和联系、Flash HTML5动画特效、flash 播放器转换 html5的宝贵知识。
本文目录一览:- 浅谈 Flash/Flex/HTML5 技术选型(flash html5 区别)
- ACTIONSCRIPT,AS3,MXML,FLEX,FLEX BUILDER,FLASH BUILDER,FLASH,AIR,FLASH PLAYER之关系
- CFI Flash, JEDEC Flash ,Parellel Flash, SPI Flash, Nand Flash,Nor Flash的区别和联系
- Flash HTML5动画特效
- flash 播放器转换 html5
浅谈 Flash/Flex/HTML5 技术选型(flash html5 区别)
在HTML5发布以前,RIA领域的技术解决方案一直相都是各展所长,并无争议。Adobe体系中,Flash做不了的事情,Flex可以做到;.Net系决策者在选用RIA解决方案时,Silverlight是不二之选。
曾经我对Flex的迷恋到了欲罢不能的地步,与我有相同想法的人亦不在少数,Flex也大有“一统江湖”的趋势。然而,随着HTML 5横空出世,Flex“易主”,Silverlight被“雪藏”,RIA领域的技术解决方案开始变得扑朔迷离。
HTML 5无疑是“明日之星”,苹果公司前CEO乔布斯对它赞赏有加,绝大多数智能手机浏览器均支持HTML 5,基于HTML 5的网站也如雨后春笋般出现。这些似乎预示着HTML 5时代来临,人们试图让决策者相信,Flash/Flex时代已经过去了,HTML 5才是RIA领域的最佳解决方案。然而,事实果真如此吗? 我曾经见过一个项目,原计划使用Flex做为前端解决方案,由于当时HTML 5“盛行”,最终决策者决定弃用Flex而转投HTML 5。 接下来会发生什么呢?
- 由于HTML 5的浏览器兼容性问题,导致需求设计阶段的很多功能都需要推倒重做。
- 在实现过程中,不仅要写HTML 5标签,还要写CSS与JavaScript,对于项目来说,增加了人员构成,项目的开发成本也随之增加。
- HTML项目可以方便获取源码,因此需要增强保密性及安全性设计。
- 在插件的编写、框架的选择上,其难度也要远远大于Flex。
从上述情况可见,HTML 5也存在劣势,并不完美。同样,我也可以列举出诸多例子来体现HTML 5的优势。那么,“真相”到底是什么?
真相只有一个:
HTML 5与Flex是两种截然不同的技术解决方案。HTML 5的出现让Flex更加专注某些方向和领域。所以,它们是互补的,而非替代。因此,“替代”一说并不准确。
虽然,上述例子只是小概率事件。但概率小,不代表不发生,不代表不典型。所以,在这里我想跟大家谈一下Flash、Flex、HTML 5的技术选型。
首先明确一个观点:技术选型没有既定的规律可循,它是由诸多因素决定的,例如:开发人员的技术知识结构是否胜任、项目的开发成本、开发人员构成、项目的开发周期、项目的属性等等。
但是,我们仍可以从这些技术的特点出发,辨别你的应用程序适合采用哪种方案!
Flash的特点:
-
优势:
- 借助时间线(Time Line)和Action Script 3.0可以方便地制作出任意效果动画。
- 完备的开发工具。(Flash Pro CS系列开发工具)
- 完备的工作流。(Adobe CS系列全线工具均可以导入到Flash并可二次编辑)
-
劣势:
- Flash Player不支持iOS。
- Flash Player不支持Android 4.1+。(Android 4.0以下系统均可支持)
Flex的特点:
- 优势:
- 完备的、可以媲美C/S架构(桌面软件)的大量控件支持。
- 与Flash及Adobe CS系列全线工具的完美结合。
- 完整的企业化开发流程及工作流(代码的编写、编译、调试、发布等)
- 多种框架可供选择,并支持高级特性,如:IoC、视图绑定、数据绑定实时更新等。
- 劣势:
- 生成的SWF过大。(虽有完善的“瘦身”方案,但仍比HTML方案大很多)
- 效率问题。(在某些情景下,比HTML 5的效率要差一些)
- 较差的图文混排支持。(无法媲美HTML 5的图文混排,这是Flash系的通病)
- 储备人员相对HTML来说还是太少。
HTML 5的特点:
- 优势:
- 完备的技术人员储备。(前端开发人员的数量完全可以跟Java、.Net程序员媲美)
- 借助HTML 5的诸多新特性,在某些层面完全可以取代Flash技术。(Flash属于Plug-in方式,而HTML则是浏览器原生支持)
- 不逊色于Flex的大量控件。(Bootstrap、基于jQuery的控件比比皆是)
- 真正意义上全平台支持。
- 借助Node.js可以胜任后台(前/后台通吃);借助Coffee Script,可以媲美Ruby/Python的语法糖衣。
- 比Flex拥有更大、更全面、更活跃的社区。
- 劣势:
- 作为企业开发,不具有媲美Flex的工作流及开发流程。
- 作为游戏开发,在支持3D及运行效率方面,不如Flash Stage3D。
- 编写HTML 5的应用程序,很大程度上还要编写CSS与JavaScript,对初学者来说,学习曲线较Flex高一些。
- HTML 5依然存在浏览器兼容问题。(随着W3C与WHATWG的分裂,估计这种情况会被进一步加深)
- 在大型HTML 5的项目中,Flex遇到的问题在HTML 5中依然存在(例如:效率问题),在此基础上还增加了浏览器兼容性、Ajax跨域通讯等新问题。
下面的表格,描述了这三者在一些关键点的比较:(图1)
下图使用区分法,来辨别应用程序的技术选项方案:(图2)
下面的表格从“项目属性”角度来比较这三者之间的优劣性:(图3)
总结:
- Flash:
- 适合强交互、强效果、少数据展示、少图文混排、偏展示/工具属性的应用程序。例如:Flash交互广告展示、页游(Flash Game)等。
- Flex:
- 适合较强交互、适当效果、多数据展示、少图文混排、偏工具属性的应用程序。例如:图片在线修改、企业内部系统、ERP系统、金融系统等。
- HTML 5:
- 适合较强交互、适当效果、多数据展示、多图文混排、偏应用属性的应用程序。例如:Google系网站、各种传统意义的网站、SNS系网站等。
via InfoQ
相关链接
想通过手机客户端(支持 Android、iPhone 和 Windows Phone)访问开源中国:请点这里
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区
转载请注明:文章转载自: 开源中国社区 [ http://www.oschina.net]
本文标题:浅谈 Flash/Flex/HTML5 技术选型
本文地址: http://www.oschina.net/news/31896/html5-vs-flash-flex
ACTIONSCRIPT,AS3,MXML,FLEX,FLEX BUILDER,FLASH BUILDER,FLASH,AIR,FLASH PLAYER之关系
- 原文链接:http://zengrong.net/post/1295.htm
ActionScript
ActionScript通常简称为AS,它是Flash平台的语言。AS编写的程序,最终可以编译成SWF、SWC。SWF就是我们常说的Flash动画。但是现在SWF已经不仅仅是动画,而是RIA的载体。
ActionScript有3个版本,分别是1.0版(AS1),2.0版(AS2)和3.0版(AS3)。只有Flash Player 9及以上播放器才支持AS3编译的SWF。这三个版本的差别非常大,现在最流行的版本是AS3。
Flex与MXML
因为在开发RIA的时候,需要很多常用的功能,例如控件(Button,ComboBox,List……)、布局(VGroup、VBox……)等等…… Adobe就开发了一套官方的框架集来实现这些功能,这套框架集就叫做Flex。
为了方便程序员快速编写RIA程序界面,Adobe又实现了一种基于XML语法的语言MXML,这套语言很像HTML,可以与AS混用,MXML最终也是编译成SWF或SWC。 Flex框架就是使用AS3与MXML两种语言写成的。但说白了,MXML 外加实现了MXML语法,如果你有兴趣,也可以自己实现这些。 Flash和Flex,都是用AS编写,使用swf体现。
Flash
现在Adobe已经将Flash其定义为一个平台(Flash Plantform),包括了Flash IDE、Flash Builder、AIR、Flash Player以及更多。但我们一般讲Flash,有两个意思,一个是指Flash动画(也就是网页上扩展名为swf的动画),另一个就是Flash IDE。
Flash(IDE)从4.0开始进入中国,前期一直在网页动画方面告诉发展,多被用来做网页小广告(让你cpu100%的罪魁祸首之一)和MV(showgood三国系列、小小系列、大学自习室……曾经风靡一时啊)。那时的“闪客”,主要是做动画,即使涉及到编程,也大多是用当时的AS1.0(后来Flash MX 2004升级为AS2.0)写一点stop、gotoAndplay之类的东东了。Flash(IDE)发展到8.0版本以后,才开始大量用于编程,当时比较流行的就是“Flash留言本”等等。相关历史我做了一张图来表示,括号里的数字是年份。
Flash Builder/Flex Builder
AS发展到3.0之后,由于其语法和JAVA比较像,再加上增强的性能与强类型,可以完全脱离FLA文件,使用纯文本编码,受到了许多其他程序员(尤其是JAVA程序员)的青睐。由此得以高速发展,用AS开发程序的人也越来越多。AS在视频网站、游戏行业发展迅速。但是,Flash IDE虽然是一个很好的动画制作工具,却不是一个好的开发工具。于是,Adobe又发布了Flex Builder,一个基于Eclipse的IDE,并发布了Flex SDK,后来又开源了。
有了免费的编译器,Flex得以快速发展。用Flex Builder也可以开发纯AS项目(即所有的文件都是as文件,不包含MXML,也不包含FLA)。一个真正的程序猿,应该更愿意使用这种方式吧?Flex Builder从4.0开始,被Adobe改名为Flash Builder。
Flash Builder和Flash IDE不应该放在一起比较,它们不是一类软件。如果一定要比较一下的话,那么就是Flash IDE比较偏重于设计一点,用它做动画比较方便,当然也可以用它编写AS3程序。用Flash IDE编写的程序,会有一个FLA源文件,可能还包含多个as文件。Flash Builder偏重于程序,用它可以开发MXML(也就是Flex)项目。也可以用它编写纯AS项目。用Flash Builder编写的项目,都是纯文本文件(.as或者.mxml)。 对于程序流,当然偏爱Flash Builder,而设计流比较偏爱Flash IDE。
当然,IDE并非只有Adobe官方的东西,Flash Develop就是个免费的IDE。如果你愿意,用记事本做编辑器也没什么不好(比如说zrong就正在尝试VIM),因为SDK和编译器都是免费的。
Flash Player
swf动画需要在网页上显示出来,就需要安装Flash Player。Flash Player的不同版本,其实与Flash IDE也有一定的对应关系(从上图也能看出来)。但到了AS3时代后,这个对应关系就不那么明显了。Flash Player 9是能支持AS3 的最低版本(其实前面还有一个Flash Player 8.5,只是没普及就升级到9了),后面的Flash Player 都能支持AS3了。关于Flash Player,我写过一篇有史以来关于Flash Player的最详细说明,看这个就很清楚了。
AIR
Flash Player 再强大,也是运行在浏览器中,受浏览器约束。为了摆脱浏览器,Adobe又出奇招,发布了AIR。AIR其实就是一个Runtime,你可以把它理解成JVM。有了AIR,就可以用AS3开发桌面软件,而且开发出的软件可跨平台运行(这和JAVA的一次编译,随处运行不是如出一辙么!)。目前国内的AIR应用主要集中在网站的客户端方面,例如新浪微博AIR客户端等。
SWF SWC SWZ
SWF
swf是我们见到的最多的Flash平台文件了。是的,它就是Flash平台的最终表现形式。前面说到了,无论是Flex、Flash还是纯AS3,最终编译出来的文件都是swf格式,浏览器中的Flash Player插件和独立的Flash Player,也只能“打开”swf文件进行播放。前面说到的AIR,它的本质也就是运行时+swf而已。
其实并非所有的swf都能直接播放的。swf有3种:
- 程序SWF(application swf):可以直接在flash player中运行的swf;
- 库SWF(library swf):swc文件中的library.swf;
- 模块SWF(module swf):Flex Module产生的swf文件。
最终用户碰到的绝大多数都是“程序SWF”,而程序猿们碰到后面两种SWF的可能性就比较大。
SWC
SWC是一种库文件,通常用来发布非开源的类。程序猿们将源码编译成SWC文件,并发布api文档,我们就可以使用这些SWC提供的类库进行自己的开发。SWC并不是运行时共享的,而是在编译的时候直接加入了程序SWF中。最终的程序SWF可以脱离SWC运行。
SWC本质就是一个zip文档,其中包含一个library.swf文件和一个用于描述的xml文件,你可以用zip管理器打开它查看。
SWZ
你可能会发现,从TLF出现以来,Flex SDK中多了一个flashx包,这个包中的功能,就是用SWZ实现的。SWZ是在运行时共享的库,你可以将其看作一个可以放在外部的SWC。而且SWZ的共享是平台级别的(Moudle SWF的共享是浏览器级别),存在于操作系统缓存中(Module SWF的存在浏览器缓存),只要下载过一次SWZ,你的操作系统中所有用到这些SWZ中的地方(无论是IE、FF、Chrome还是AIR)都不用重新下载。
对于程序猿,这里的关于SWC和SWZ的信息肯定是不够的,所以建议看一下smithfox的swf swc swz RSLs ant,本文的这个部分也是参照它写成的。
全文完
关联文章
- [转]Flash Builder 4中构建纯ActionScript书写的AIR项目
- Flash Professional 载入资源文件方法考">[转]Flash/Flex Builder <-> Flash Professional 载入资源文件方法考
- Flex Builder 3 b3编译的swf文件为什么那么大?
- 《ActionScript 3.0 Cookbook》读书笔记1.2-关于trace()
- Flash Builder 4 For Linux
CFI Flash, JEDEC Flash ,Parellel Flash, SPI Flash, Nand Flash,Nor Flash的区别和联系
CFI Flash, JEDEC Flash ,Parellel Flash,SPI Flash, Nand Flash,nor Flash的区别和联系
简单说就是,Flash,按照内部访问接口不同,分为两种,
一种是就像访问SDRAM一样,按照数据/地址总线直接访问的nor Flash,
另一种是只有8位(X8)/16位(X16)或者更多(X32/…)位宽的总线,每次访问,都要将长地址分成几部分,
一点点的分别传入才能访问的Nand Flash。
Nand和nor的使用寿命,块擦除的速度,数据存储的出错几率等,都有很大区别。
而其中的nor Flash,根据外部接口分,又有普通的接口和SPI接口。
而普通接口的nor Flash,多数支持CFI接口,所以,一般也叫做CFI接口。
CFI接口,相对于串口的SPI来说,也被称为parallel接口,并行接口;
另外,CFI接口是JEDEC定义的,所以,有的又成CFI接口为JEDEC接口。
所以,可以简单理解为:对于nor Flash来说,CFI接口=JEDEC接口=Parallel接口
所以,可以简单理解为:对于nor Flash来说,CFI接口=JEDEC接口=Parallel接口
关于CFI接口的详细信息去看:
Flash Memory: NAND,EEPROM,NVRAM and others [ZT]
http://hi.baidu.com/serial_story/blog/item/95f14cf09e1b00a6a50f5260.html
普通的parallel/CFI/JEDEC接口的的nor Flash的针脚比较多,芯片比较大,比如:
而SPI是比较常见的接口,就不多说了。
之所有会有SPI接口的,主要是相对CFI/Parallel的nor,可以减少针脚数目,
减少芯片封装大小,采用了SPI后的nor Flash,针脚只有8个,例如:
Flash HTML5动画特效
1、HTML5 Canvas火焰喷射动画效果
还记得以前分享过的一款HTML5烟花动画HTML5 Canvas烟花特效,今天我们要来分享一款类似的HTML5动画效果,一款基于HTML5 Canvas火焰喷射动画。用鼠标拖动一条直线,直线长度表示火焰喷射的力度,另外,火焰在运动中还可以反射效果哦。
之前我们已经分享一款HTML5 3D正方体旋转动画,可以切换至正方体的任意一面。今天我们再来分享一款绚丽的HTML5 3D立方体旋转动画,这款立方体的色彩看上去非常艳丽,旋转起来的动画效果也十分流畅。是一款很不错的HTML5 3D动画效果。
3、HTML5/CSS3实现大风车旋转动画
这次我们要来分享一款很酷的HTML5动画,是一个可以旋转的大风车动画效果,回顾一下利用HTML5实现的旋转动画,我们可以看HTML5/CSS3实现3D旋转陀螺动画,它们的实现都是利用CSS3的transform:rotate属性,这款大风车动画的确比较厉害的。
4、HTML5小车动画 很酷的HTML5吉普车
有几天没有分享HTML5动画了,之前很多HTML5动画都是利用CSS3的一些特性和Canvas特性来完成,比如这个HTML5/CSS3实现蝙蝠侠人物动画就利用CSS3的动画特性,HTML5 Canvas模拟衣服撕扯动画就利用了HTML5 Canvas特性。今天我们要分享一款利用HTML5/CSS3实现的吉普车动画,小车可以水平滚动,非常逼真。
5、纯CSS3 3D图片翻转展示 图片3D阴影效果
之前我们分享过一些HTML5图片3D效果,这篇文章分享10款效果惊艳的HTML5图片特效中我们可以看到很多3D的图片特效。今天我们再来分享一款利用纯CSS3实现的3D图片翻转展示特效,点击图片或者下方的翻页按钮即可选中相应的图片,并实现翻转展示效果。
6、HTML5摆动的文字特效 类似柳枝摆动
之前我们在html5tricks上分享过一些HTML5文字特效,像这款HTML5/CSS3 3D文字特效 文字外翻效果,像这款HTML5像素文字爆炸重组动画特效都非常有特色。今天我们来分享一款可以摆动的HTML5文字特效,文字垂直下垂,并可以在微风中微微摆动,就像春风中的柳枝一样。
7、HTML5/CSS3 3D木块旋转动画
今天我们要来分享一款迷人的HTML5/CSS3 3D旋转动画,这款3D动画的主角是一根根小木条,每根小木条都会旋转,小木条之间的旋转有一定的间隔,这样就会有一种螺旋的视觉效果。另外,和之前分享的HTML5 3D动画一样,也是利用了CSS3的transform属性,点击这里可以查看更多HTML5 3D特效。
在线演示 / 源码下载
flash 播放器转换 html5
请问哪个好心的大大能帮我将 cmp4 播放格式转换为 html5 播放格式,请留 QQ ><"今天关于浅谈 Flash/Flex/HTML5 技术选型和flash html5 区别的介绍到此结束,谢谢您的阅读,有关ACTIONSCRIPT,AS3,MXML,FLEX,FLEX BUILDER,FLASH BUILDER,FLASH,AIR,FLASH PLAYER之关系、CFI Flash, JEDEC Flash ,Parellel Flash, SPI Flash, Nand Flash,Nor Flash的区别和联系、Flash HTML5动画特效、flash 播放器转换 html5等更多相关知识的信息可以在本站进行查询。
本文标签: