【IT168 分析评论】
最近,我想IT领域最为火爆的一个词汇就是:HTML5了。随着Google Wave揭开面纱,FireFox 3.5、Opear 10、Chrome相继支持HTML5特性后,本来就不是一个新词汇的HTML5突然之间进入到了更多人的视线里面,本应是一个利好的事情,毕竟HTML5的出现会给Web带来很多新的“生机”与“活力”。
然而,不知道从什么时候开始,HTML5竟然被描述成了“Flash杀手”、“ RIA杀手”等“血淋淋”的词汇。关于HTML5能否可以取代Flash、取代RIA?网络上几乎是各抒己见,百花齐放。
本篇文章也是叙述HTML5与RIA之间的事情,但是本篇文章是从他们之间的从属关系进行的叙述,而没有从技术等角度来描述。
okay,首先第一个阐述的观点,既然HTML5是RIA、Flash、Silverlight杀手,那么所谓“杀手”指的是什么呢?
即“杀手”的含义:
HTML5可以代替Flash、Silverlight、JavaFX等技术。甚至于“消灭”掉RIA这个词汇。
那么既然说到了RIA,让我们先了解一下RIA的定义:
网络上关于RIA的定义有很多,我就不在这里叙述了,定义请看:这里
目前来说RIA范畴的主流解决方案大致如下几个:
1、 Flash(Adobe公司)
2、 Silverlight(Microsoft公司)
3、 JavaFX(Oracle公司)
4、 Ajax(以JavaScript驱动)
不过无论哪种RIA解决方案,他们有一个共同点。都是需要下载一个runtime,然后相当于浏览器插件形式存在的。(Ajax除外)
也就是说:HTML5与RIA之前的关系是:平台与插件。无论是哪个RIA技术都会包容在HTML里面。(Ajax技术亦是如此)
也就是说:之前他们的关系是“和平相处”的情况。
而HTML5在某些人的描述中,突然之间变成了RIA的杀手、Flash杀手、Silverlight杀手...
那么持这些论调的人所拥有的观点是什么?
我觉得大致有以下几个特征:(我只是列举了几个特征而已)
<video>标签:
利用HTML5这个新标签可以直接在HTML上面播放视频、例如ogg、mp4格式。
<canvas>标签:
利用HTML5这个新标签可以直接在HTML上面显示2D图形。例如圆形、长方形、正方形等。
HTML5离线处理:
在Google Gears、Adobe AIR大行其道的今天,如果以后HTML原生的支持离线标准,并且制定了相应的标准,那么肯定会对Google Gears、Adobe AIR产生重大的影响。
通过上面的几个HTML5的特性的确不能难看出:
一个具有2D绘图能力,同时也可以自行执行多媒体技术、并且拥有离线处理技术的新产品,那么它的确是有RIA特性的产物。更“可怕”的是,它还是RIA技术的平台、载体。
但是我想说的是:
1、 Flash早在Flash 1版本的时候就已经支持了2D绘图。同时Silverlight、JavaFX也都在他们的第一个版本中支持了2D绘图。
2、 Video/audio的支持的确是一大进步,不过目前主流的流媒体技术仍旧是Adobe公司的FLV,同时FLV占据了90%的份额,那么ogg、mp4能否成为主流格式呢?如果不成为主流的话,<video><audio>标签能否有受众?(当然Youtube支持一个HTML5的访问链接)
3、 离线标准的制定:这个地方的确是看起来很美,但是前有Google Gears、Adobe AIR,后有Silverlight 3.0版本的加入。而且无论是哪种方案,目前都有大批量的程序作为依靠。
上面是我说的HTML5其中一部分“引以自豪”的功能。那么我再说说下面的一些问题:
1、 HTML5的制定需要在2022年才能正式发布,就是说这部分相当充裕的时间,就足以让Flash、Silverlight、JavaFX等做他们想做的事情了。
2、 浏览器的兼容性,虽然现在可以使用一些非常规手段,例如识别未知元素等方式,让HTML5向下兼容浏览器,但是大家一定要注意,虽然可以识别,但是仍旧无法使用HTML5的特性。而Flash、Silverlight、JavaFX,如果出现了上述的情况,那么只需要下载对应高版本的runtime即可,这也是插件方式的优点。
3、 又是浏览器的兼容性,无论Chrome、FireFox、Safari里面JS执行速度如何的快,目前IE(6、7、8)系列还是占据主要市场的。而浏览器直接的JS等的不兼容性,也会给HTML5的推广带来很多不利的因素。
通过上述的一些反例足可以说明,HTML5会真的“看起来”很美?我想不是的,那么HTML5可以为我们带来什么?