======================================================
注:本文源代码点此下载
======================================================
详细地址: http://www.k-zone.cn/zblog/post/html5-kill-ria.html
最近,我想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杀手...
那么持这些论调的人所拥有的观点是什么?
我觉得大致有以下几个特征:(我只是列举了几个特征而已)
标签:
利用html5这个新标签可以直接在html上面播放视频、例如ogg、mp4格式。
标签:
利用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能否成为主流格式呢?如果不成为主流的话,标签能否有受众?(当然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可以为我们带来什么?
首先一个先决条件:html与ria一直都是“平台与插件”之间的关系。
然后我举一个“貌似”恰当的例子来说明:
例如:windows xp,如果想要具有类似vista aero效果,那么需要下载第三方工具:windowsblind来模拟实现,最终是可以实现aero效果,那么效率方面也不如在vista原生的支持好。同样,在vista已经原生的支持了aero效果,那么windowsblind也有相对于vista的版本,而这个版本可以支持更多的效果。
上面的例子不是很贴切,但是我想可以说明一个事情。
如果html5可以原生的支持视频、2d图形、离线浏览等功能,是不是可以这么说:
flash、silverlight、javafx可以通过这些特性做更多的事情呢?或者flash、silverlight、javafx可以更专注于某些html无法实现的功能,同时html5也会给ria带来更强大的平台。
下面是一个html5的特性展示:
http://people.mozilla.com/~prouget/demos/dynamiccontentinjection/play.xhtml(以上链接需要firefox 3.5打开(即支持html5的浏览器))
如果看不了的话,请看video:
http://standblog.org/blog/post/2009/04/15/making-video-a-first-class-citizen-of-the-web
通过这个demo可以得知,我们在html5上面的内容可以通过“某些手段”显示在video上面。这就是一个比较典型的互动,那么如果让html与flash进行配合,是不是可以做出真实的产品介绍等内容呢?
再比如一个例子:
在google wave中,我们可以利用html5的将桌面上面的内容直接拖拽到浏览器里面,如果这个特性放到flash里面,即将桌面上面的内容直接拖拽到flash里面,然后再进行处理(例如图片处理等方式),当处理完毕后,还可以再保存到桌面上。这样的方式,我想如果没有html5的支持是无法实现的。
所以我认为html5不仅不是ria杀手,而且还是ria新的强大的实施平台。当html5搭载ria后,ria将会变得更加的强大。同时ria也会相应的放弃一些不必要的功能。
那么html5到底是谁的“杀手”呢?
我个人觉得html5联合ria技术因而面对的真正对手:传统的c\s类型的软件。
当然了上面的观点是我的猜想,原因也很简单:
1、html5 + ria将变得很强大,强大到将web的内容渗透到操作系统上面。
2、背后还可以有云计算的支持。
3、html5 + ria无疑可以慢慢模糊浏览器与操作系统之间的界限,即模糊b\s软件与c\s软件之间的差别。
4、html5、ria无论哪个概念都属于web领域,因此html5的加入可以助力web领域的发展。
同时,上述任意一点无疑都是对传统软件的冲击,也就是说:web产品对桌面产品的冲击和挑战将会随着html5的到来而越演越烈!
再猜测继续猜测一下,web下一个对手将是os(操作系统),而web的“战将”则是html5、ria、云计算等技术。
因此本文的真正题目是:html5 + ria“大战”桌面软件:)
写在最后的话:
本篇文章在某些地方的确有些“火药味”,因此在某些地方有偏颇的话,还请各位看官,指下留情:)
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/