首先一个先决条件: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“大战”桌面软件:)
写在最后的话:
本篇文章在某些地方的确有些“火药味”,因此在某些地方有偏颇的话,还请各位看官,指下留情:)