纳金网

标题: HTML5对战Flash:一场恩怨缠绵的拉锯战 [打印本页]

作者: lut_456    时间: 2013-4-22 16:00
标题: HTML5对战Flash:一场恩怨缠绵的拉锯战
2010年4月30日,乔布斯宣布iOS弃Flash,采用HTML5的消息传出后,微软也力挺乔布斯,称Flash落后。乔布斯封杀Flash的理由是:Flash不适合触摸设备,技术封闭。而HTML5可以通过代码实现Flash视频播放技术,且支持Canvas画布功能。
消息一出,不止震惊了业界人士,同样还波及到普通用户。2010年Flash Player的市场份额将近98%,普及率高,受众广。苹果公司在2010年相继推出iPhone 4与iPad,因外观时尚、灵动、便携而广受欢迎,而iOS封杀Flash的举动,也让用户与开发者重新对HTML5有了初步了解。在iTunes商店中的应用不见Flash,让那些基于Flash技术的游戏编写者不得不更换为HTML5。事实证明,HTML5在iOS平台深受好评,但有些用户还是希望能出现一款具备Flash特色的iOS游戏。
有了苹果、谷歌的支持,HTML5可谓众星捧月,愈发受到业内巨头与开发者的青睐。谷歌、苹果都赞其为网络标准新生力军;连一向不服从标准的微软,也悄然在Internet Explorer 9 中加入对HTML5的大量支持(IE10的HTML5得分更高于IE9),今年微软的开发者大会上不仅推出了Windows 8,同时还宣布将取消Metro界面下Flash支持。那么Flash是否会被HTML5搞死?或是与HTML5并存而生?处于尴尬位置的Adobe,将采用什么手段与HTML5抗衡?

简单了解一下HTML5:
  根据维基百科上的解释,HTML5的前身是Web Applications1.0,由WHATWG于2004年提出。2007年,它被互联网联盟W3C接纳。
HTML 5与HTML 4的不同之处
  增加新的元素:section, video, progress, nav, meter, time, aside, canvas
  input元素的新属性:日期和时间,email, url
  新的通用属性:ping, charset, async
  全域属性:id, tabindex, repeat
  移除元素:center, font, u, strike, s, frameset, frame, applet
HTML 5技术优势
  据一位开发者表示,“HTML5与Flash在功能上并不完全重叠的,比如对于摄像头等计算机硬件的调用,仍然只能使用Flash或其他方法实现”。但HTML5引入了一些足以让Flash致命的元素,最致命的两个标签:canvas与video。
  一旦新网络标准只采纳HTML5的Video,那么我们所登录的视频网站将统一放弃Flash Video(FLV),此举将深刻影响到整个互联网,而Canvas也将网络动画与图片载入速度大大提升。
HTML 5绝杀Flash的两大元素
canvas画布
  在Flash大行其道之前,曾经出现过很多种在网页中实现绘图功能的方法,并无统一的标准。当Macromedia公司(后被Adobe收购)推出Flash后,被广泛接受并成为网络绘图标准。基于Flash的动画、游戏等应用如雨后春笋般蔓延到互联网的每个角落。
  而现在,Flash新的挑战者出现了:HTML5的新标签canvas。
canvas相比Flash,具备不依赖于外部插件、与浏览器渲染引擎紧密结合、节约资源的优势,最重要的是极大的简化了图形和网页中其他元素的交互过程。
  对于Flash来说,使Flash中的元素与网页中其他元素进行交互是要消耗大量时间和资源的,另外在编程上也相当不方便。
  而canvas本身就是HTML5的一个元素,可以像操作普通HTML元素一样操作它。开发人员可以将所有的代码整齐的写在一个文件里,降低了维护与更新的难度;而用户打开具备canvas元素页面也快过加载Flash的网页。
  canvas也有缺点:
  1.增加描绘复杂图形的难度:开发者不得不编程描绘每一个点和矢量曲线,在旋转缩放时更需要和矩阵变换打交道。
  2.动画的实现存在缺憾:canvas实现动画的非常繁琐。开发者必须在每一桢动画显示时清空画布,然后重画所有元素,这必然导致包含大量元素的场景动画缓慢,只移动少量元素就要重画整个画布会浪费大量资源。而且创建动画也是一件十分繁琐的事情。
  3.没有提供一套方便的事件体系:开发者也许需要通过捕获鼠标在 canvas 中点击的坐标,判断用户到底点击了什么图形元素。在这个过程中可能要遍历所有的显示元素并判定点是否在图形内,实现起来比较繁琐。
  由此可见,HTML5在不能实现上述步骤时,依然需要Flash的支持。
  目前已经出现了基于canvas的游戏引擎,但是从效果上看未能与Flash相比。
  WebGL让我们看到了硬件加速的希望,这将极大的改进图形显示的速度,而IE9、Chrome、Opera等开始支持该技术。
  关于编辑器,Adobe Flash CS5不得不做出妥协,增加了Flash转换为canvas的功能。
  倘若canvas标签无法简化开发步骤,将很难得以良好发展,本领域将由Flash继续统治。
video视频元素
  video标签是对Adobe威胁最大,同时也是最致命的,因为一旦广泛采用video标签,将打破Flash在线视频领域的垄断地位。
  但目前实现video的情况仍需时日,作为 video 内容的视频存在编码问题,苹果和微软所支持的H.264不是开放标准,浏览器厂商必须为其付费。因此,作为三大浏览器之一的火狐浏览器拒绝支持此编码格式,而Google早前曾收购一套视频标准,2010年I/O开发者大会时正式宣布推出WebM,并于今年1月时宣布取消对H.264的支持。
  根据最近的统计,虽然Google Chrome浏览器和Apple Safari浏览器增长很快,但浏览器市场还是主要被IE与火狐占据。不过火狐在今年4月时已加入到谷歌的WebM联盟,video标签的推广相对容易了。
  但谷歌WebM被MPEG-LA联盟质疑侵犯H.264专利,为避免纠纷,微软与苹果一直未加入到谷歌的WeM联盟,而Mozilla火狐与Opera因不主张H.264的网络许可付费行径,选择加入WebM。由此可见,HTML5需要一个既开放又优质的视频编码标准。
  要让微软、谷歌、苹果这三个在很多方面存在竞争关系的业界巨头团结一心的支持同一套标准是很困难的。
  苹果方面对 Flash 痛下杀手,微软方面则极少参与这场论战,因为有自家的Silverlight。至于谷歌则在支持HTML5的同时在 Android 中加入了 Flash 支持,甚至存在将Flash纳入Chorme安全沙箱的计划。今年,谷歌还在Google Labs推出一个将Flash转换为HTML5的工具。
  三大科技巨头虽然目的一致却不齐心,未免对HTML5的开发方向也有所分歧。在这样的大环境下,HTML5的前景不容乐观,至少不能被广泛推广。

Adobe在今年9月发布Flash Media Server 4.5,软件引入苹果iOS系统支持,出版商制作Flash视频内容,通过HTTP直播生成为苹果支持的格式。但Adobe表示,Flash Media Server 4.5的问世,只能保证Flash视频能在iPhone和iPad上欣赏,那些基于Flash开发的游戏,动画和广告仍然不被iOS设备支持。

  Adobe在发布Flash Player 11时表示,尽快推出兼容iOS的flash游戏编辑器,让iOS用户体验到基于Flash创建、却又不同于Flash的新技术。

 Google电吉他,你在这一天有没有亲自弹首歌曲给自己听?
  Flash还为Android的市场份额增长做出了一定贡献,这也是谷歌没有完全放弃Flash的主要原因。2010年12月,谷歌将Flash纳入Chrome OS安全沙箱,为Flash饱受诟病的耗电问题、安全问题提供了良好的解决方案。
  因此,未来的Flash的市场份额会有所下滑,若苹果产品市场份额取得新高,那么Flash的份额将急速下降。但根据目前的手机市场份额来看,Android暂时领先于iOS,所以Flash在移动领域还要存在一阵。而传统桌面方面,在微软强势推出Win8之后,根据目前的反响来看,Win8很符合操作系统的发展潮流。当微软宣布Win8 Metro界面取消Flash后,Adobe方面表示微软对Flash认识存在误区,不管Adobe怎么想,微软是决定以HTML5为主发展方向,辅以Silverlight应用来填补Flash。若Win8 Metro界面反响良好,Windows 9或将全面封禁Flash。所以,Flash在PC端的市场份额会在未来几年逐步削减。
  至于HTML5,预计在2年内达到相对普及。随着科技的发展,取代Flash需要开发者与程序员一同创建出更新的标准。业内巨头之间矛盾重重,对HTML5的发展非常不利。现有标准能够被各大浏览器无差别支持就已经相当困难了,想要加入任何新功能都要很久才会被广泛支持。 这样缓慢的发展速度如何能够体现强大的竞争力,我们拭目以待。

作者: 89684598    时间: 2014-2-22 15:54
谢谢分享




欢迎光临 纳金网 (http://old.narkii.com/club/) Powered by Discuz! X2.5