读书人

HTML5来了Flash还能走多远

发布时间: 2012-11-07 09:56:10 作者: rapoo

HTML5来了,Flash还能走多远?

?????? 历史的车轮向前滚进,技术的脚步永不止歇,在这即将迎来HTML5的全新世代,一度荣登王者宝座的Flash技术,又能继续行走多远呢?谈到 Flash 能走多远的问题时,我们不得不先聊聊作为 Flash 前辈的 Applet 所以要提它,是因为人类历史上 第一个运行在浏览器之上的交互式应用,本来就是 Java 小程序,而非什么 Flash 。

早在 1995 年之初,当 Gosling 和 Gage 在 WebRunner 浏览器(即日后的 HotJava 浏览器)上展示 3D 分子模型之际,人们对 Java 的第一印象就是“这是种可以将静态网页变成动态的语言”,而并非这是种“开发手机应用的 语言”或者这是种“开发企业级应用的语言”。
?
直言不讳的说,自从 Java 与 Applet 诞生之初,直到 2000 年 Flash5 出现以前, Java 和 Applet 一直都是网站动态效果实现的首选媒介(尤其是网络教学)。而在此以前的 Flash 还算不得主流,登不得台面。
?
为什么 Java(Applet) 会变得不如 Flash 普及?
?
关于这点,抛开 WindowsXP 后期版本不再内置 JVM 的影响不谈,应该说同 Sun 高层的愚蠢无能,以及 Macromedia 高层的下作龌龊不如关系(某个时期的 Flash 真的就像流氓软件一样,不经过任何预警便自行安装,也没有必要的砂箱保护,什么都能运 行)。
?
正是这群墨守陈规,不思进取, 被 Java 技术所带来的惊天财富冲昏了头脑( 2000-2001 年 Sun 最兴盛时,股票峰值曾达 258.75 美元 / 股,公司估价超过 2000 亿美金),对技术趋势把握犹如童蒙的 Sun 高层,最终葬送了 Java 在网页乃至桌面领域的大好河山。
?
要知道,当时的 Applet 虽然有着相当完善的 Java 类库支持,并有稳妥的砂箱机制保证程序安全,但运行速度却异常缓慢(特指 JRE1.0-1.3 ),运行界面也远没有 Flash 那么鲜艳友好,已经变得渐渐无法适应越来越复杂的网络展示需求,业界甚至开始出现关于 Java 与 Applet 的不利消息。
?
更关键的是,假如当时没有 Macromedia 的 Flash ,或者 Flash 根本就是个连 Applet 也不如的垃圾那还好说。可偏偏,偏偏 Flash 在界面效果与运行速度方面都远胜于当时的 Applet !而这群理应在脸上被刻下 S13 星烙印的 Sun 高层,不单在不必要的时刻过早地与微软决裂,甚至还对 Flash 这样新兴技术的威胁无动于衷!
?
他们即不想办法走正道完善自己 的 Java 与 Applet 体系,又不会运用邪道将 Flash 挤出市场,既没能预见到网页前端市场中蕴含的巨大商机,更无法适时的调整公司经营战略寻 求新的 Java 赢利模式,任凭别人风生水起,自己却只管悠哉游哉的数着因股价飞涨而带来的绿色钞票。
?
——此辈若能成事,岂有天理 乎!
?
事后的结果证明,相对于系统内 置,小巧灵活,并有足够强大图形编辑工具支持的 Flash 。原有的 Applet 技术显得臃肿、缓慢、不易开发,甚至没有一款拿得出手的图形编辑器。
?
要知道,在 IT 领域中按资排辈这种事情根本就不曾有过。即使几十年的老店,也很可能会被某个车库中诞生 的新生公司打的体无完肤。
?
更何况,在那些愚不可及的 Sun 高层眼里,网页前端甚至桌面市场或许本就是一盘可有可无的生意,赢了没什么不好,输了也 不可惜。毕竟 Applet 只是 Java 功能中的一小部分, Sun 有 SPARC 、 Solaris 、 Java 这三大法宝,即便 Java 中舍弃了 Applet ,依然有大把本钱,根本不必在意。
?
很明显,当时的 Sun 高层,对于“占领桌面,跳进口袋”这样的经营理念还缺乏认知。 假如他们明白,那 么无论 Applet/AWT/Swing 也好, J2ME 也罢,也决计不会是今天这种地位。
?
此消彼长下, Flash 的兴起与 Applet 的堕落几乎都成了必然,越来越多的开发者投向 Flash 阵营,最终导致了今天 Flash 的兴起与 Java ( Applet/AWT/Swing )在网页前端领域的没落。
?
在新的时代里,伴随 HTML5 的逐渐普及,网页技术的大洗牌时代将会再次来临。
?
正所谓“长江后浪推前浪,前浪 死在沙滩上”,就像当时的 Applet 技术,会被更先进,更进取(也更流氓)的 Flash 技术所取代一样,新技术体系的出现,永远是旧有技术体系所无法回避的恐怖梦魇。
?
——就连 Adobe 公司与 Flash 也无法逃避这种规律。
?
诚然,现今的 Flash 比之当初改进了很多, Adobe 将它变得比以前更 完善(他们干脆重写了 Flash 核心),除了原有的小动画、小广告、小游戏之外, Flex 的出现让 J2EE 或其它技术体系能够利用 Flash 开发商业应用, ActionScript 脚本让死硬技术派们可以直接编写出 Flash 程序而不必拖拽界面。小到 AV 视频展示,大到网络游戏应用,几乎到处都可以见到 Flash 的踪影, Flash 简直成了 RIA 的代名词。
?
无论实际怎样,在当今这个时代 里,“够快、够简、够普及”早已成了人们对 Flash 技术的潜在共识。
?
——然而,这些印象恐怕也只能 维系到 HTML5 普及以前。
?
没错, HTML5 标准的出现,将彻底颠覆现有的网页前端生态体系。
?
因为 HTML5 的诞生,很大程度上就来源于浏览器厂商们对于网页前端技术需求的反思。 干脆点说,根本就 是对于 Flash 大红大紫的一种醒悟。
?
在这里,我们姑且将其想象为一 场阴谋,一场“ HTML5 ”诡计。
?
在某个阴暗偏弊的房间里,业界 的大佬们,或许曾经进行过类似这样的讨论“既然 Flash 用几 MB 的支持库就可以在浏览器上实现的功能,难道我们这些平台(浏览器)就做不到吗?既然是人 人都要用到的功能,我们又为什么非要通过 Flash 进行中转实现呢?既然现在大家都需要这些功能,并且寻求更好的用户体验,干嘛不将它们绕 过 Flash ,直接内置到浏览器中,以换取既快且稳的效果呢?!”
?
这些人大概会达成这样一种共 识,那就是 Flash 很牛,牛到了几乎没它不成。可长此以往,兄弟们恐怕也都没得混了。所以,只好委屈 Flash 先走一步吧!
?
正如站在汽车上跑步,无论跑得 再快,始终跑不过汽车一样。任凭 Flash 的 UI 再漂亮、制作再简便、运行速度再快,它又该如何超越它所在的浏览器平台本身?如何摆脱这 群大佬巨鳄的魔掌呢?
?
事实上, HTML5 所提供的 API 标准,彻底克制于 Flash 之上。一旦标准普及,毫无悬念的, HTML5 将秒杀 Flash 。
?
可以设想一下,随着 HTML5 的逐渐普及,当你通过一个 <video> 标签就可以播放高清网络视频,当你通过一个 <canvas> 标签就可以渲染出相当靓丽的网页动画,当 WebGL 让你网页硬件加速,运行出不次于《魔兽世界》的 3D 效果,当 WebSQL 让你在浏览器中保存数据就像操作桌面应用那么简单,当 WebSocket 轻而易举地实现浏览器与服务器端通讯之际,谁还会关心什么 swf ,谁还会记得什么 Flash ?
?
Ext3.0 提供的 <video> 标记应用效果:
HTML5来了,Flash还能走多远
Web3D 效果:
?
?
HTML5来了,Flash还能走多远
?
不客气地讲,当 HTML5 真正普及之日, Flash 的优点都将变得不能再称为优点,而它的缺点却会开始凸现得越来越严重。
?
所有依靠 Flash ,特别是依靠 Flash 在网页方面养家糊口的同仁们,我劝大家千万不要相信那个关于 HTML5 要到 2022 年才会正式实施的传闻,误以为还有很长的周期让 Adobe 改进技术甚至相信 自己能在此前就熬到主管级别。
?
只要稍微看看最近 Chrome 、 FireFox 的更新趋势,乃至未来的 IE9 规划,你立刻就会发现,它们会等你到 2022 吗?绝对不会!不到 2015 年, HTML5 就已经是各个浏览器的事实标准了。
?
看到这里,你或许会说:“胡 说! Flash 可不只是那么一点功能,况且现在有那么多的 Flash 应用,难道都能轻易舍弃吗?兼容性问题你都解决了吗?”
?
——没错,原有的 Flash 功能,就是会被人们所遗忘舍弃。
?
正如有声电视机取代无声电视, 电话机取代传声筒一样,让你在一台免费的 PS3 ,一台免费的 Xbox 中抉择你想要哪台主机,你可能很难下决定。然而,如果换成一台是免费的小霸王,一台是白 来的 Xbox 间抉择,该搬哪台回家,肯定不用笔者去教。
?
即便网络上有 97% 的网站在使用 Flash ,即便网络上有数不清的 Flash/Flex 应用存在,一旦更简便、更快捷、更高效的 HTML5 标准普及,这些都会变得毫无意义。
?
毕竟新近的开发者们决不会选择 一种低效、缓慢、过时、并且可以被替代的技术作为自己的开发语言。
?
到了这时,就算你给地球上 60 多亿人口每人配备一个 Flash 应用,这 60 亿也将成为一个永远不会增加的死数,也就是 Flash 的极限。而人有寿命,网站同样也有寿命,即便某些死硬派不愿放弃,即便某些死硬网站不改 初衷,他们也只能维系自己这点地盘,却丝毫影响不了别人的选择。最终,他们不是被别人吞并,就是自己也改弦更张,至多是死抱着 Flash 直到寿终正寝,但无论如何,迟早都是同样的下场。
?
谈到这里时,我希望大家不要忘 记,当初 Netscape 的市场占有率有多少,现在又有多少?更加不要忘记,当初 Applet 在网页前端应用的市场占有率有多高,现在又有多高?
?
假如他们的被取代大家都能想 通,到了 Flash 被取代时,我们会再犯糊涂吗?不会。
?
——应该说,只要未来普及了 HTML5 , Flash 回老家结婚就是注定的。
?
或者你还会想,如果低端走不 通,那么我就走中高端,让 Flash 继续增加 HTML5 所不具备的特性,毕竟 Flash10 以后的安装文件也有 10 多 MB 了,所谓“虱子多了不咬,债多了不愁”,再加点也没什么,自然有人会用。
?
嗯,没错,如果 Abode 继续复杂化 Flash 功能,并能够完成那些 HTML5 所无法实现的复杂应用固然很好。
?
——但是,您是不是忘了点什 么,真以为 Java 和 C# 都是摆设不成?
?
Applet/Javafx , Silverlight 这些现成的网页前端应用解决方案是摆着好看的吗? Oracle 、 Microsoft 在复杂应用,尤其是企业级应用上是吃素的吗?莫非 Flash 开发者就真的集体空闲到会用 N 多年来逐一重复开发轮子,然后再做项目?莫非有现成的一体化解决方案不用,资方还非要用 你的 Flash 前台,微软或甲骨文的后台?即便你一口咬定 Flash 开发就是简单,但这时已经有了更简便的 HTML5 可用(甚至连 swf 的加载都省了),你又何苦自残呢?照此发展下去,就算开始时真有几个想不开的,可一旦做 HTML5 的渐渐多了,傻子始终会不够用的……
?
就在此刻,只要你去下载最新版 本的 Chrome ,稍微尝试下 HTML5 即将带来的全新功能,你就会发现,以前看上去那么短小精悍的 swf 文件,曾几何时,怎么就变得这样臃肿没用了呢?!以前那么艳丽生动的 Flash 动画,曾几何时,怎么就变得这样繁琐呆滞了呢?!
?
——我们应该清楚的看到, HTML5 的出现,并不仅是一场技术革新,更是一场业界洗牌!它将彻底破坏现有网页前端技术的游戏 规则,将 Flash 打入万劫不复之地!
?
再者,这么多年来 Flash 普及甚广,吃这碗饭的人不在少数。而反过来说, Flash 程序员品质参差不齐,技术有高有低,被人利用 Flash 中马,被人利用 Flash 盗取个人信息者更不在少数,对 Flash 深恶痛绝者也不在少数。
?
且不提乔布斯这样痛骂 Flash 的业界领军人物,单单是你我这样的普通技术人员,又有几个从没有被网站上的 Flash 广告搞的页面崩溃,又有几个没有安装过 FlashBlock 的呢?
?
有些 Flash 开发人员看到此处或许会心有不甘,但至少在网页前端领域, Flash 的衰落已不可避免,并非你我这样的凡夫俗子所能干预影响。
?
在这里,就让我们提前说一 句:“ Flash 你好, Flash 再见” 吧!

?

文章来源

读书人网 >Flash

热点推荐