http://dreamana.com/weblog/

其实很久以前就想写一篇关于自己对Flash的理解的文章,今天有点空,静下心来慢慢总结一下。虽然近来有一些Flash的好消息,比如AGAL2即将发布,AS3在TIOBE统计表上上升至20位;但是总体来说,我觉得Flash的前景是非常迷茫。

过去

HTML4的大补丁

首先,我不想再去追溯Flash的历史。我认为,Flash之所以存活多年,最后几乎成为桌面浏览器上各种多媒体插件的“唯一幸存者”,原因是在过去 Flash 补充了 Web。

以前的Web是蹩脚的,对动画、视频及各种前端交互支持很弱,恰恰Flash填补了这片空白,加上Flash并不像其他多媒体插件那样单纯的只有音频视频播放,而是一种RIA技术(类似有Java Applet,以及后来微软的SilverLight,但是他们的市场占有率都不及FlashPlayer)。FlashPlayer插件的安装量一直居高,这样一来,Flash为许多想做创意作品并发布到互联网上的人提供了平台。

性能低下,完全是Flash的错吗?

ActionScript3的出现无疑是Flash的第一次蜕变。AS3运行在AVM2上面,从技术角度说,整体上是会比旧版的(FlashPlayer 9.0以前)快的。而然,随着FlashPlayer一次次升级,为什么Flash给大家的印象仍然是“吃资源大户”?

我打算不深入解释这个问题,如果有接触过类似于Java技术的人应该很容易理解。

简单地说有几点:

  • 一是技术瓶颈。FlashPlatform属于跨平台方案,目前大多数跨平台方案都存在性能问题,没有哪一个能完美解决的。另外,FlashPlayer作为一种浏览器插件存在,更是受到浏览器本身的制约;
  • 二是开发者水平。程序优化不是每个开发者都会做,不是每个项目都有时间做;
  • 三是官方不重视。持有Flash商标的Adobe公司过去一直没重视Flash的性能问题。直至移动平台开始盛行,Steve Job宣布iOS不支持Flash,Adobe更改Flash路线图专注游戏以及视频之后才得到重视;
  • 四是缺乏图形硬件加速。过去Flash开发者们不能使用GPU渲染图形,于是大量运算只能通过CPU处理,对于没有过多优化的Flash应用常常出现非常CPU占用率。直至FlashPlayer11的Stage3D诞生,Flash才支持使用GPU渲染。

总之,单纯论Flash这种技术,单纯把AS3作为一门语言看待,它本身没有错,说到底它只是个工具。最求性能不是唯一目标,还有易用性、通用性、扩展性等等,牺牲的部分性能却为开发者带来的便利是不言而喻的。

现在

Flash并不是唯一中枪的一个

不能抵挡的移动互联网时代来临了。满大街都是移动设备,人们的习惯被改变了。不仅仅是IT行业,许多行业都面临洗牌。

在这个时候,Apple登上了明星舞台。iPhone的出现,iOS的生态系统的形成。曾经的大牌移动电话,曾经的流行桌面操作系统,曾经的风靡的游戏掌机……都已不再。不可否认,世界改变了。

某天,Steve Job发表他的见解,阐述Apple的移动设备不应该支持Flash的原因,把Flash各种缺点、矛盾摆出来,然后搬出另一个所谓更好的解决方案HTML5。

Long live HTML5?

名人发表的言论,未免会被人追捧甚至夸大。好像大家都意识到HTML5是更好的移动Web解决方案。但,HTML5是何物?

最终用户:管他呢,总之只要不用Flash!看视频不会卡机就好了。
传统Web开发者:你看你看,HTML5多厉害!不但播视频不用Flash了,还可以做游戏,3D! WebGL!
Flash开发者:省省吧,各种兼容性问题,开发起来不如Flash方便。功能不全,过几年跟上了再说吧。

许多人都没有深究HTML5是什么东西,他们只会道听途说。做技术的很清楚技术的优缺点。但很多Flash开发者都忘记是Flash是怎么发展起来的。HTML5的总体来说更难用是因为处于发展初期,组织松散,但不代表它没意义。相反,大量开发者的加入会更容易推动其发展。况且,现在已经有相当多JS框架,IDE,以及交叉编译方案可以选择。

而我也稍微接触过网页开发,所以我不会抵触HTML5,也不想袒护Flash。说实话,HTML5要比过去的Web“丰满(Rich)”(不过学习门槛也提高了),而且为了适应移动互联网时代,Web要向前发展是必然趋势。也许哪天不需要Flash这个大补丁了,那么Flash就可以从网页上消失了。很明显Adobe也意识到这个风险,于是自己先妥协了,但这一步,退得太快,伤害了一大群开发者。

归根到底,Flash的没落都因时代的变化,技术的生命周期,不可抗拒。而不是因为被人口诛笔伐,不是它本身很烂,更不是有了更好代替品。

我们不应该把一个新生的工具(HTML5)夸大成瑞士军刀。 为什么?下面换一个话题吧:

Web还是App?

众多统计表明,移动设备用户对App的使用频率要赶超Web了。人们已经习惯了使用App去接入移动互联网,Web与App的比例在拉锯着。对于低耗低功率的移动设备,似乎App更有优势。当然,当前也有很多HTML5转APP的方案,但毕竟那已经是变成是客户端,不再是B/S模式的Web。

而目前看来,曾经说大力支持HTML5的iOS系统上的Safari浏览器就不支持WebGL(或者说是屏蔽了)。很明显,Apple需要维护他的App生态系统,而不想被Web侵占。

那么,还能确定HTML5就是救星吗?谁敢保证HTML5生命周期很长?

AIR – Second life of Flash

换了一个名字,大家就认不出来吗?AIR就是属于Flash技术,让Flash应用转化为独立客户端。AIR是就像一个备胎,最初他不是为移动平台设计的,而是桌面系统。AIR本应是Flash的第二次蜕变。因为他可以将Flash技术从浏览器中解放。

但令Flash开发者们最为失望的就是,自从Adobe策略性转移投资在HTML5上,对自家的Flash投入就日渐缩减。各种路线图修改,各种人员调动。Flash开发者不断流失,Flash社区变成“死海(Dead Sea)”。

将来

Flash到底何去何从?

Flash技术还没有死;但是Flash生态系统已经不如往日。

作为一名长期的Flash开发者,我觉得从这个平台上面学到了许多,也积累了许多很有用的经验。这种经验,就如Thibault Imbert所说的,可以给它一个名字叫Flash DNA。即使现在转向使用HTML5,转向使用移动平台的游戏引擎如Unity, Cocos2d-x等,又或转向使用CreativeCoding的框架如OpenFrameworks等,Flash DNA仍然可以给到很大的帮助。

所以,不要抱怨现状,不要抛弃宝贵经验,只要Stay Hungry Stay Foolish,适应时代的变化,我们仍能很好地面对将来。

What about Flash?相关推荐

  1. TOF摄像机可以替代Flash激光雷达吗?

    TOF摄像机可以替代Flash激光雷达吗? 一.基于ToF技术的Flash激光雷达 基本成像原理上ToF Camera与LiDAR相同,都采用飞行时间测距技术(包括利用APD或SPAD的直接测距法,和 ...

  2. 如何下载flash离线安装包

    如何下载flash离线安装包 CreateTime--2018年4月14日16:02:13 Author:Marydon 1.下载地址 UpdateTime--2018年5月13日16点55分 ppa ...

  3. 使用 Flash Builder 的 Apple iOS 开发过程

    使用 Flash Builder 的 Apple iOS 开发过程 iOS 开发和部署过程概述 构建.调试或部署 iOS 应用程序前的准备工作 在测试.调试或安装 iOS 应用程序时选择的文件 将应用 ...

  4. [转]优化Flash性能

    原文:http://www.adobe.com/devnet/flash/articles/optimizing-flash-performance.html 翻译:http://bbs.9ria.c ...

  5. (转)flash的Socket通讯沙箱和安全策略问题

    一.沙箱和安全策略问题     1.此问题发生在连接时,准确地说是连接前,分别两种情况:         1.本地播放    本地播放时,默认情况下Flash Player将不允许swf访问任何网络. ...

  6. Flash气泡回弹效果

    好久没有碰过Flash了,今天温习一下AS3.0,做了一个回弹效果,气泡回弹 本想着怎么可以定义气泡的不同颜色,这样可以做出更绚丽的效果,或者更进步一,气泡和气泡直接回弹,想了老半天没有想出来,就先这 ...

  7. 谷歌浏览器Google Chrome和Adobe Flash Plugins插件安装问题

    最近在做CSS的多浏览器支持,于是安装上了谷歌浏览器Google Chrome浏览器,结果发现谷歌浏览器Google Chrome的确构造非常简单,精干,速度非常迅猛,比臃肿的IE8快多了,于是开始使 ...

  8. flash h5录音_博乐h5网站建设案例-AI优网络

    沈阳滑翔网站建设/设计沈阳荷兰村网站建设/设计沈阳和泰新城网站建设/设计沈阳黑山网站建设/设计沈阳红旗台网站建设/设计沈阳浑河堡网站建设/设计沈阳浑南中路网站建设/设计沈阳浑河站西网站建设/设计沈阳浑 ...

  9. Window7 安装开源swf反编译软件JPEXS Free Flash Decompiler(FFdec)实录

    FFdec是一个免费开源的swf反编译软件,在Windows,Linux,Mac上都能用,比那个硕思闪客精灵厚道多了,功能也不比它差,我以后就用FFdec了. 官网地址如下: http://www.f ...

  10. 使用Cumulus和Flash Player搭建视频会议示例

    该篇文档取材于Cumulus官网上的视频会议代码,详见 https://github.com/OpenRTMFP/Cumulus/wiki/Server-Application,-Samples 我根 ...

最新文章

  1. 神经网络注意力机制--Attention in Neural Networks
  2. android webview gettitle,Android-webview加载网页去除标题
  3. 今天看到这篇新闻之后,决定休息一下咯
  4. 腾讯面试:前 K 个高频元素
  5. 所长不会用计算机,梅州市公安局: 两派出所所长不会电脑被停职
  6. JNLP(Java Web Start )
  7. HarmonyOS之应用工程结构与设备模板
  8. 跨域获取json电商数据
  9. python基础:字典的使用
  10. 《天天数学》连载12:一月十二日
  11. 对注册表操作的REG函数
  12. 初识openwrt(上)
  13. 简易OA漫谈之工作流设计(五,直接上级)
  14. 为什么录像总是很暗_为什么拍出的的照片总是很暗?看下是不是这2个原因造成的...
  15. u盘写保护+计算机管理,电脑如何去除u盘写保护?
  16. java文件恢复软件,误删文件恢复-误删文件恢复大师 v1.1.0 最新版
  17. Linux中etc目录是什么缩写
  18. 国际IT巨头集体爆发“中年危机”
  19. beyond compare 4官方中文版下载
  20. Keras : 训练heart心脏病诊断训练集并测试

热门文章

  1. 兼具高效与易用,融云 IM 即时通讯长连接协议设计思路
  2. 一个股市小白学习炒股的心得体会
  3. 使用Dronekit控制无人机,DroneKit配置
  4. openvz相关资料
  5. 英语口语——情景话题类词汇汇总
  6. CVPR 2017论文集锦(论文分类)—— 附录部分翻译
  7. 华为云部署JavaWeb(SpringBoot)程序(基于Centos7)
  8. 偏财入财库大富_八字有财库者大富
  9. LWUIT的List应用系列(一)List基础
  10. 了解MySQL,走进他的心