- 浏览: 350254 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (354)
- Flash | as3 (53)
- AIR | Starling (46)
- Android (55)
- Java (10)
- C++ (6)
- PHP (43)
- IOS (9)
- Unity3D (2)
- cocos2d-x (1)
- OpenGL (2)
- WebGL (3)
- Server (4)
- MemCache (13)
- MySql (2)
- NoSql (2)
- PhoneGap (13)
- jQuery | jQuery Mobile (14)
- javaScript | html5 | css3 (14)
- Linux (1)
- Box2D (2)
- SmartFox (1)
- Ruby (0)
- Python (2)
- Golang (11)
- Redis (1)
- 开源项目 (6)
- 游戏策划 (1)
- 云平台 (2)
- 项目管理 (6)
- 听见月光 (32)
最新评论
-
kenkao:
http://www.linuxidc.com/Linux/2 ...
解决idea编译时resources文件夹内容不自动复制到输出路径classes的问题 -
kenkao:
http://blog.csdn.net/yanwushu/a ...
解决idea编译时resources文件夹内容不自动复制到输出路径classes的问题 -
wpy126:
你这种比较根本不公平AppCan 用了多个页面,jqm内容都 ...
AppCan VS PhoneGap - 对比两大移动开发平台 -
kenkao:
zs12593 写道这个,这个
这里只是转载,建议看一下原文, ...
android游戏开发框架libgdx环境搭建 -
zs12593:
这个,这个
android游戏开发框架libgdx环境搭建
本文版权归 博客园 xiaotie 所有,如有转载请显式标注原创作者及出处,以示尊重!
作者:xiaotie
原文:http://www.cnblogs.com/xiaotie/archive/2011/10/05/2199234.html
10月3号,Flash Player 11 和 AIR 3.0正式提供下载,一片安静。最近这两年来,关于Flash的新闻一向是以负面为主,先是 Silverlight 的挑战,然后是 iphone和ipad的不支持及html5的良好预期,Flash 看似风雨飘摇,明灭不定。实则不然。我个人观点:Silverlight成不了Flash的竞争对手,主要原因是商业层面的原因。html5还是初生婴儿,需要进一步观察。这些在本文后半部具体分析,本文重心还是Flash。
下面先详细阐述:
(1)什么是Flash平台
(2)Flash平台的两次涅磐与重生
(3)Flash平台的商业策略及这种策略的优势和劣势
我个人只有3年的Flash开发经验和2个月的html5开发经验,受经验所限,本文若有事实错误还请指正。
(1)什么是Flash平台
什么是Flash平台?这个问题绝大多数人、甚至绝大多数程序员都不知道,因为Flash一直游离在主流开发人群之外,大家对它的印象:最开始是网络动画和网络广告,后来是网络视频,接着是现在的网页游戏。
下面用一句话来介绍什么是Flash平台:
Flash平台是与.Net和Java类似的运行时平台,有虚拟机、有GC、有比较成熟的快速开发语言、有比较成熟的IDE。它们之间的不同是:
· Java是从Server端起家的
· .Net是从桌面起家的
· Flash是从Web起家的
Java 现在统治了Server端的快速开发。.Net 统治了Windows下的Web开发、是桌面快速开发(还未统治)的重要选择。谁会统治Web和移动APP的快速开发?目前只有两个选项——JS和Flash。虽然目前JS的呼声比较高,但我觉得Flash的胜机更大,或者是两者的寡头垄断,后面比较html5和flash时再详细分析。
Flash有一个运行时,现在叫avm2,相比Java和.Net的大个头来说,这个运行时很小,只有很少的功能,甚至连线程都没有。Flash Player 10的安装包为2M+,Flash Player 11的安装包为3M+。Flash 的可执行文件格式是swf,库是swc,字节码是abc(ActionScript Bytecode)。Flash的主流开发语言是actionscript 3.0,它是一种ECMAScript语言,我私下叫它javascript ++。actionscript 3.0 既有静态语言的特性,又有动态语言的特性,什么属性啊、事件啊、元数据啊等都有,是一门快速的开发语言。Flash的其它的开发语言有haXe,C,C++。顺便说一句:haXe也能开发html5应用。
Web是Flash平台的起家之地,以Flash Player为核心。在桌面上,Flash的解决方案是AIR(你可以把它看作WPF的类似物),在移动平台上,Flash的解决方案也是AIR,在Android上,AIR是以虚拟机机制运行的,在ios上,是直接编译成二进制执行的。
也就是说,目前的Flash已经从以前的Web平台扩充到三个平台:
· Web平台
· Windows/Linux/Mac osx桌面平台(这次AIR 3.0的发布,大幅度增强了桌面平台的能力)
· 移动平台(Android,ios,黑莓)
Flash是目前唯一一个可以快速开发,然后经过简单的修改(连UI都是公用的)就可以在上面几个平台上跑的技术。就我个人的体验,actionscript 3.0的开发速度比java高得多,比C#要略低。
好吧,顺便在这里说一句,为什么我说Silverlight和Flash看似一样,却是截然不同的。
虽然从技术上Flash能做到的,Silverlight是都可以做到,但是微软是绝对不会放纵Silverlight跨这么多平台的,因此在商业上是绝对做不到的。随着AIR 2.7的出现,以及微软现在对win8、html5的态度,Silverlight已经提前出局了。Silverlight将是windows上的开发利器,但,仅仅限于windows平台。这种层面的战争是商业战争,而不是技术战争。Silverlight虽然是微软自己搞得,但现在看起来是后妈养的。Flash虽然是买来的,但和Adobe的发展习习相关,就像亲儿子一样。
Adobe有一个开源项目叫Alchemy,可以用C/C++写Flash程序,这一方面会继续增强:
We released Alchemy on Labs over two years ago as an experimental prototype that allowed developers to leverage C/C++ code in Flash Player and AIR. We have not updated the original Alchemy prototype, and while we noted from the beginning that it should not be relied upon for production content, we’ve received persistent requests from developers asking for official support in the Flash runtimes.
We’ve been listening and have decided to invest in creating an improved version of Alchemy, which we plan to release as part of a paid production offering for commercial development. We intend to make non-commercial use free of charge.
The production release will offer significantly better performance and productivity over the Labs prototype. By re-architecting major portions of the technology, we aim to enable code execution approaching native performance, scalable support for large code bases, full debugging support, up to 75% reduction in code size, and seamless integration with ActionScript – all while reaching virtually every connected computer on the web.
出处:http://blogs.adobe.com/flashplayer/2011/09/updates-from-the-lab.html
如果这一个目标实现了,直接在Flash平台上写高性能程序不是奢望。
(2)Flash平台的两次涅磐与重生
Flash平台经过了两次涅磐与重生。
第一次是2006年 Flash Player 9的发布。从Flash Player 8到 Flash Player 9的进步是质的飞跃,在虚拟机层面由 avm1 变为 avm2,性能的大幅度提高及由 actionscript 2 演化到 actionscript 3,使得Flash 平台具有了挑战其它平台的可能性。
第二次就是这次Flash Player 11 及 AIR 3的发布。Flash Player 11 有一个重大的特性就是硬件加速的 3D API。虽然Silverlight 5也提供了硬件加速3D API,但是Silverlight 蜗牛般的推进速度令人遗憾。
这里再强调一下,这种战争是商业战争。Silverlight为什么安装率不高?我认为有两大原因:
(a)强行推行Silverlight 存在一定的法律风险,这个不是主要原因;
(b)就算Silverlight占有率是99.5%,微软也得不到什么好处,反而需要花费巨大的推广费用,这个应该是最主要的原因。除非微软能够把每台机器上的Flash 给卸载掉,那个时候才能从Silverlight获得巨大利益。能做到这一点的,只有我们天朝的周大先生,微软没有这样的人物,a8m也不会让他这样干。
再看看Flash Player的成绩。Flash Player 10是2008年发布的,现在的占有率是99+%。我在前几个项目时还要考虑Flash Player 9,现在根本不用考虑了。而如果Flash Player 11能延续这个速度,2-3年之后,几乎每一个机器的浏览器上就有了硬件加速3D API,这比普及浏览器还快得多。3D Web应用,3D 网页游戏的首选技术呼之欲出了。
AIR 3的意义比Flash Player 11的意义更大。
AIR 3可以调用native api了(之前,只能和可执行文件通讯),这样一来,在桌面开发就可以将界面和逻辑部分用AIR开发,而性能攸关部分用c/c++开发。
AIR3 支持桌面和移动平台。印象中,从AIR 2.6已经支持移动平台了,但是那个版本的性能表现很差劲。AIR 2.7表现还可以,这个是今年6月发布的,没几个月,目前用AIR开发的移动应用已经10000+了。并且,市面上已经有众多的Flash游戏,这些游戏可以以很小的成本迁移到移动平台上去。而游戏,是移动平台上最主流的应用。
OO、快速开发、IDE、跨平台、3D、native invoke,这些加起来,意味着什么呢?虽然移动平台让Flash Player 插件遭到了滑铁卢,但是也给了Adobe一个崛起的契机,AIR3 就是吹响的号角。
(3)Flash平台的商业策略及这种策略的优势和劣势
总体来说,Flash的平台策略是小运行时+类库扩展和源生扩展。这个运行时的核心是UI。UI是开发中工作量非常大的部分,能够简化这一部分的开发是Flash的核心优势,而因为是小运行时,跨平台的工作量不大。因此Flash可以轻轻松松随随便便的跨平台,而.Net,Java这种重量级的选手跨平台的代价就大多了。Silverlight也可以做这一点,但不会傻到真去做。
Flash平台的三个核心优势:
(a)广泛的安装基础(这个拜网络动画、视频而赐)
(b)统一的UI模型(两个层面:基于Sprite层面的和基于mxml/data bindding/style层面的)
(c)跨平台(主流平台都跨了——各大桌面操作系统、各大web浏览器(桌面)、各大移动应用平台)
Flash平台的劣势也是在于小运行时,运行时不完美,缺乏一些能力,对于大型应用不适合,只适用于中小型应用,而这类应用,恰恰是移动应用和Web应用的主流。
Flash、Silverlight和html5的比较分析
上面说了,Flash有三个核心优势:安装基础、统一的UI模型和跨平台。
对于Silverlight来说,.Net在技术上比Flash更为成熟,不过缺陷在于安装基础和跨平台,这导致了Silverlight只能是Windows平台上的移动应用和Web应用的可选方案。
对于html5,需要详细的分析:
(1)安装基础:html5在移动平台上的安装基础比较高,但是在桌面上的安装基础还很弱;
(2)UI模型:html + css + js 比较成熟,虽然浏览器兼容问题也客观存在,但注意一下还是可以解决,js的话是个短板,它和C#,Java这种现代语言来说,生产力差距是明显的,但如果要写大型应用的话,可以用haXe这种万能语言来补充;
(3)跨平台:目前主要是跨移动平台,桌面平台的话,ie7,8的消灭还需要时日,对于中国来说,还得先干掉ie6。
html5最重要的优势是它不是私有技术,受各大厂商欢迎。它的最重要的缺点有两个:
(1)性能:这个性能有两个限制,第一个是由于是公开的技术,各种实现上的性能不一样,js在不同平台上性能差距10倍100倍是常事。移动平台不支持Flash是因为Flash应用在移动浏览器上几乎跑不动。这并不表示Flash平台比html5 平台性能低下,反而目前,根据我的项目经验,flash平台的性能要远远高出html5平台的性能,且是数量级的差异。同等的Flash 2D应用,如果用html5实现的话,在移动平台上的性能简直不忍目睹,即使是在桌面平台上,IE9的Canvas有硬件加速,跑起来也还是显得慢。当然,这些会随着时间发展慢慢完善,但是,想想多浏览器,等每个厂商都完善是个漫长的过程。而对于私有技术来说,AIR 2.6在移动平台上慢得像蜗牛,仅仅翻了个年,AIR 2.7在移动平台上的性能就有了数量级的提升,这是私有技术的好处。第二个限制是js,js不是强类型的,这不利于大规模开发和高性能开发,会成为瓶颈。对于前者,由于js非常灵活,我们可以通过haXe这类语言引入强类型,但高性能,却是实打实的问题。
(2)解决方案:出于发展初期,各种解决方案欠缺。
因此,未来的RIA可能三分天下:
·50K以下的和50K以上的用户众多的非计算密集性应用,html + js统治
·50K-2M之间(Windows平台)、50K+(其它平台)Flash统治,并会在桌面和移动应用上有一块不小的领地
·2M之上的(Windows平台),Silverlight统治
IT界,新的竞争者总是出现在意想不到的地方升起。
发表评论
-
as3 中文转拼音
2017-01-03 17:27 2486private static const PinYin:Ob ... -
解决flash builder 4.6调试不可用
2016-12-19 09:47 500来自:http://blog.csdn.net/cupi ... -
ColorMatrixFilter 色彩矩阵滤镜
2016-05-20 10:34 985包 flash.filters 类 public final ... -
ANE 在 Android 上的应用
2015-01-08 17:59 976http://blog.csdn.net/linxcool ... -
as3通用三方库大全
2014-09-25 10:41 947http://wiki.junnan.org/pages/ ... -
4个不错的Flash开源项目
2014-08-15 12:02 547原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出 ... -
Flash教程:多种图片切换效果
2014-08-12 14:16 648http://www.missyuan.com/threa ... -
DragonBones快速入门指南
2014-07-17 10:46 985DragonBones快速入门指南 ... -
[Flex]Flex编程注意之自动获取焦点、监听全局键盘事件
2014-07-17 09:40 509http://www.k-zone.cn/zblog/pos ... -
使用 jsfl 发布flash IDE 插件
2014-07-16 16:59 1037http://blog.csdn.net/aosnowas ... -
as3种常见的弹性效果公式以及波形运动等as3动画效果公式代码整理
2014-07-14 09:12 996as3种常见的弹性效果公式以及波形运动等as3动画效果公式代 ... -
基于flash AS3.0 的BASE64编码与解码类
2014-07-02 13:35 698代码 Code highlighting produc ... -
FlashBuilder 4.6下载与安装
2014-06-04 17:02 4来自:http://m.oschina.net/blog/ ... -
as3绘制饼状图
2014-03-31 17:13 666来自:http://www.cnblogs.com/ddw1 ... -
Pixel Bender 浅尝
2014-03-21 17:50 783来自:http://chaimzane.iteye.com/ ... -
Flex入门的好书——《Flex3 Cookbook 中文版》
2014-01-13 13:55 843本文标题:Flex入门的好书——《Flex3 Cook ... -
MaxRects纹理合并算法as3实现
2014-01-09 17:40 3164来自:http://www.duzengqiang.com ... -
AS3之BitmapData学习整理
2013-10-24 11:05 2680http://www.cnblogs.com/ps ... -
AS3连接MYSQL数据库
2013-10-12 17:38 594原文链接:http://www.cnblogs.com/yi ... -
flash实用工具类+开源包收藏
2013-09-09 11:02 2167来自:http://blog.sina.com.cn/s/b ...
相关推荐
欧菲光将继续巩固与HMOV、三星电子、乐金电子、吉利汽车、长安汽车等合作伙伴的关系,并将不会依赖单一企业,这将有助于公司改善企业体质,实现涅槃重生。欧菲光的市值目前约为200亿,预计将成为公司重生的全新起点...
【标题】"20210805-太平洋证券-欧菲光-002456-涅磐重生,砥砺前行.zip"所指的是一个由太平洋证券发布的关于欧菲光公司(股票代码:002456)的研究报告,这份报告的发布日期为2021年8月5日,主题是欧菲光经历困境后的...
该产品不仅继承了品牌的核心技术,还在设计和性能上进行了全方位的优化,力求在高效率散热与低噪音之间取得最佳平衡。 首先,黑虎鲸散热器采用了九州风神的专利技术——滚压加工技术,这项技术通过特殊的加工方式...
黑客文化之莲花涅磐:全球监控与泛互联网时代的新安全人才观
及至中年,涅磐而重生。颌下蓄髭,仙风道骨,好读书,喜抽烟,乐饮酒,善营销。微博出,创华艺,声名鹊起。其人可敬,其命可叹,或乃煞星投胎,虽命运多舛,其名必流于世,其身必流于波涛之中。太史公曰:牛逼。
环保行业2020年投资策略:外联强援内修功,行业涅磐在即.pdf
在3D设计与建模的领域中,掌握POLY建模技术是每个建模师必备的技能之一。POLY建模,即多边形建模,是通过操作和编辑多边形网格来构建和塑造三维模型的一种方法。它具有高度的灵活性和控制力,使得设计师能够精确地...
【基于51的4✖4矩阵键盘埃涅磐】是一个51单片机课程设计项目,旨在通过编程和硬件设计实现一个4×4矩阵键盘的接口,并在两个数码管上显示按下键的行列位置。51单片机是广泛应用的微控制器,常用于嵌入式系统开发,...
还不错,对同学得帮主会很大的,尤其是那些需要教材的同学
《酒类经销商的涅磐之路》是一份专为超市管理学和相关从业人员设计的参考资料,旨在探讨在现代商业环境中,酒类经销商如何适应变化、提升竞争力并实现业务的转型升级。这份文档深入剖析了酒类经销商面临的挑战,以及...
例如,思维涅磐可以分为三个区间:前言、导言和思维涅磐。欧赔精算可以分为两个区间:赔率精算和欧赔最优解。 在欧赔思维的前言部分,介绍了欧赔思维的基本概念和原则,包括欧赔思维的定义、特点和应用范围等。导言...
您将在每个新选项卡中打开Nirvana HD图像! 惊人的! 每个新标签中的真棒高品质Nirvana图片。 对于真正的粉丝,就像我一样:)您会非常有启发性的,并且您会喜欢这个不错的扩展。 简单易用(只需向下滚动即可查看更酷...
#### 涅磐重生的WP7(以及它的历史简介) ##### WP7的起源与转型 **Windows Phone 7 (WP7)** 是微软在移动操作系统领域的一次大胆尝试,标志着从Windows Mobile时代到Windows Phone时代的过渡。与Windows Mobile...
它允许将所有项目和子项目仍按“执行顺序”或与项目层次结构无关的任何其他顺序排列在标准的平面列表中。 父项目名称作为名称前缀为日常任务执行中的小型子项目提供了上下文。 (此外,通过这种方式实施起来更容易-...
此外,通过绘制不同颜色的线(如涅磐、宝瓶、般若等)和图标(如DRAWICON),帮助识别买入和卖出信号。 6. **交易决策**:如“持股”和“持币”标记,基于SAR指标判断是否持有股票。当SAR高于当前价格时,建议持币...
- 本题考察了汉字书写规范,如“涅磐”应为“涅槃”,“膺品”应为“赝品”,“神智不清”应为“神志不清”,“勿庸置疑”应为“毋庸置疑”,强调了对常见错别字的辨别和纠正。 3. 词语解释: - 此部分考察了对...
贪食蛇游戏操作简单,可玩性比较高。这个游戏难度最大的不是蛇长得很长的时候,而是...- 涅磐模式 没有可怕的危险,你可以轻松应对 2、解开蛇自己的环境。 3、其他级别组的经典模式。 4、70个独特的里程碑赚边玩。[1]
“涅磐”是基于某些新原理的新操作系统的项目。 如果您担心“操作系统”一词,则可以将其视为一个框架,尤其是因为Nirvana核心的当前实现可以在Windows主机上运行。 主要特征 演员模型 这可能是第一个基于OS。 ...
学习时,老师是宝贵的资源,但也别忘了图书馆的作用,多跑图书馆,多借相关的书看,多看程序、分析程序思想、多做题,从中寻找不会的题,与老师、同学交流,进而不断地提高自己! 在学习C语言的路上,我们都是公平...