HTML5怎麼就成了RIA“殺手”?

最近,我想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可以爲我們帶來什麼?
首先一個先決條件: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的瀏覽器))
通過這個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“大戰”桌面軟件:)
寫在最後的話:
本篇文章在某些地方的確有些“火藥味”,因此在某些地方有偏頗的話,還請各位看官,指下留情:)
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章