HTML5拿什麼取代Flash?

HTML, 技術語言, 網頁設計

HTML5

最近關於HTML5吵得火熱,很多人認為HTML5出現會秒殺Flash,以至於在各大web前端開發論壇吵得不可開交。論壇裡三言兩語說的不夠 盡興,只好在自己一畝三分地裡敞開了說說。也當一次神棍,展望一下web前端開發的未來。首先這裡所說的HTML5也不僅指HTML5本身,而是泛指 HTML5、CSS3、 JavaScript以及新的瀏覽器API所包含的整 個web端技術。

誰需要HTML5?

Google最需要!Apple的Jobs也需要。但這兩個肯定各懷鬼胎。微軟無所謂了,反正他還有Silverlight

Mozilla/Firefox非盈利組織,目標可能會高尚些,是w3c標準就要支持。Opera那點瀏覽器市場佔有率估計還沒敢有太多想 法。

Google 的雲計算帝國就差一個支持 RIA(Rich Internet Applications)富互聯網應用的客戶端了,試想 HTML5得到普及,更多的應用轉向BS模式時,微軟帝國的桌面軟件生態環境必定受到很大威脅,垂涎多年的Google一定是最大受益者。當在一台操作系 統免費的電腦上使用和MS Word差不多功能的免費Google Doc時,你還會掏錢買微軟的Word嗎?當你所有的辦公應用都只需要打開瀏覽器窗口 時,你還會花錢買操作系統嗎?Google的Chrome OS操作系統界面已經說明了這個意圖

Jobs也需要HTML5,他是打著小算盤,想讓瀏覽器原生支持視頻音頻,這樣iPhone、 iPad就不用嵌入Flash,Jobs當然 不能讓Flash進iPhone OS,要不然App Store裡的遊戲誰去買?同時,如果大量的應用都能基於瀏覽器實現時,用戶就不會被 Windows的桌面應用套牢了。漂亮的Mac電腦誰不喜歡。

他們選擇 HTML5都是為了更大野心,期望HTML5帶來整個軟件生態環境的改變,同時避開不受自己控制的Flash。

Macromedia 和後來的當家Adobe把握住了互聯網應用的發展需求,不斷的完善的Flash,使之已經超越了瀏覽器本身的功能。各 大瀏覽器廠商也看到這種應用的需求,不甘於一個本該瀏覽器實現的功能,由一個幾兆大小的 Plugin實現了,並玩的風生水起。於是不遺餘力的推進 HTML5,並且矛頭直指Flash。

用戶想要HTML5嗎?用戶要的不是技術,是應用,是體驗。如果你能拿Ajax實現一個開心農場,我想沒誰會在乎它是不是Flash做的。

開發者想要 HTML5嗎?那需要一個成熟的HTML5+CSS3+JS的開發環境,需要各個瀏覽器提供統一的用戶體驗,即標準的完全兼 容。還需要增加新的學習成本。

html5Flash 的優勢?

Flash比HTML5強在哪?性能,功能?如果說HTML5將擁有和Flash所有內置對像類似的DOM 呢,還有GPU的2D、3D加 速呢?這不是沒可能,畢竟HTML5還只是草案。當然Flash也能不停的更新。

開發群體:

Flash 的優勢是在開發人員上,十多年的積累,有眾多優秀的藝術家、程序員和互動設計師集中在Flash平台上做互動媒體開發。也 使無數的類庫有了AS版,如FLARToolKit,Touchlib,OpenCV這些互動、圖像分析的c++庫都移植到了Flash平台。在RIA應 用上有相對成熟且開源的Flex框架,越來越多的企業在嘗試使用Flex替代Ext等 Ajax框架,為客戶提供更好RIA應用體驗。

持續發展:

FlashPlayer 是一個封閉的系統,是由Adoeb獨家控制,相對於開放的HTML5標準這是弱勢,也是技術上的優勢,它可以很靈 活,可以隨時加入新技術,新功能。而 HTML5是一個公開標準,既然是標準就意味著不會經常改動。Flash的改進升級只需要用戶升級 FlashPlayer插件,插件的升級相對用戶來說,是輕量級的。HTML標準的改進意味著升級瀏覽器,這是相對重量級的用戶操作,尤其是還有很多人不 明白什麼是瀏覽器。

HTML5開放標準一旦確定下來,就會有一個很長的使用週期,今天看是足夠先進的功能,十年後呢。就像當年我們用著 HTML4+CSS2+JS沾沾自喜以為足夠表現Web應用時,誰能想到今天Flash不斷改進所開拓的天地呢。或許十年後我們又該討論HTML6秒殺 Flash的話題了。

超越web應用:

如果當時SUN能重視Java Applet,或許就沒有Flash的今天,SUN也不會淪落到被收購的境地。而如今Adobe AIR更 是讓Flash超越Java Applet,讓Flash超越了web,脫離了瀏覽器。Flash到如今功能不斷增強,在多媒體領域也在不斷地壓縮自家老 大哥Director的應用空間。多點觸摸、人臉識別、Socket通訊同步、AR增強現實、實時視頻等等功能在Flash平台上的實現,讓越來越多的互 動多媒體項目採用Flash方案。

希望Adobe繼續能擴展Adobe AIR平台的功能,提高性能。能有越來越多的跨平台桌面應用在AIR上實現。

Flash 的劣勢?

FlashPlayer版權私有。
swf文件的內容相對封閉,搜索引擎不友好。

插件的安全隱患。
相對與Ajax技術的學習曲線及學習成本。

FlashPlayer 94%裝機率!=100%。
iPhoneOS明確不支持Flash,而iPad首日12萬的訂單,預計將會開啟一個大市場。

不支持3D硬件加速。FlashPlayer如果支持3D硬件加速,必將重寫現有的2D矢量引擎,鑒於ShockWave 3D的 表現,FlashPlayer 硬件3D,很難有很好的用戶體驗!

HTML5拿什麼取代Flash

功能:

HTML5目前還只是草案,從已提交的內容來看,增加了許多更具語義的標籤,新的標籤意味著在DOM中增加新的類,如果把瀏覽器比做一個大 的 Flashplayer,HTML5無非就是在增加新的類,新的API。然後由JavaScript來調用這些API。

如果HTML5要完全取代Flash,至少要提供和Flashplayer10相似的功能。

這應該不是問題,添加WebSocket 、WebSQL、WebGL……甚至WebQt、WebMFC都是可以無盡暢想的。或者乾脆把瀏 覽器就做成一個大虛擬機,完成Java的桌面遺願。如果有足夠的需求動力,這些都不是問題。

性能:

在 很多 HTML5激進派的文章裡,都痛指目前Flash的效率低下,導致瀏覽崩潰。真的是Flash效率低到如此不堪嗎?肯定不是,只是 Flash的濫用和參差不齊的Web前端開發人員造成的。同樣如果用IE的JS引擎寫一個Ajax版的XX農場,如果所有頁面廣告動畫都用JS來寫,我想 那才叫效率低下。如果真的Flash效率低,為什麼那麼多網頁遊戲都不是Ajax做的呢?為什麼很多優化的很好的Flash3D遊戲場景都很流暢,而一個 2D的XX農場就能拖慢你的酷睿2呢?不明真相的半吊子開發人員總是把瀏覽器不響應和崩潰歸結於Flash效率低下。
所以未來HTML5要取代Flash 必須有一個高效的2D/3D圖形文字渲染引擎,和一個高效的JavaScript引擎。這樣 才能帶來更好的用戶體驗。這些,眾瀏覽器廠商都準備好了嗎?Chrome和Opera似乎正在走這條路。

兼容性:

HTML4 標準已經十多年了,今天我們還會寫下fxckIE6的CSS樣式名。瀏覽器的兼容性會是最大的問題,尤其是加入n多特性後的 HTML5和CSS3。IE,Firefox,Chrome,Safari這些瀏覽器背後的大佬們,怎麼去協調呢?這有個矛盾,開發差異化的產品,卻要提 供同質化的功能。JS性能、標籤瀏覽,同步收藏,插件這些提高用戶體驗的功能,都是這些差異化的方向。如果再出現類似ActiveX這類IE only的 東西,那還不如維持HTML4這種方式不變。

開發模式:

Flash IDE將無數優秀的藝術家、UI設計師和互動程序設計師團結在一起,最終成就了Flash,這也與Macromedia和 Adobe在圖形設計和互動設計群體中的號召力不無關係。

HTML5的互動會將JavaScript提高到一個新的高度,這必將需要一個成熟的開發環境。繼續DW+Firebug?或者DW升級為 全新的HTML5互動開發IDE,或者微軟VS來幹這件事,或者是Eclipse?

成熟的開發環境才能聚攏人才,才能激發無窮的創造力,帶來更多的內容。豐富的內容自然帶來更多用戶。

部署:

這是最重要的一個問題,沒有這一步,一切都是零。

Flash新版本怎麼部署?在90%多桌面佔有率的基礎上更新插件就OK。HTML5怎麼部署,更新瀏覽器,這個有點難,看看頑強的 IE6。聽到有人建議微軟在系統 ServerPack裡包含IE更新,只能說這想法很好,但是反壟斷的大錘一定會把微軟砸死。

那怎麼引導用戶去升級瀏覽器呢?對於互聯網「Core User」來說不是問題,目前支持HTML5和CSS3部分特性的Chrome開發 版,很多人都在用了。但是那些「Light User」呢,可能連天天看網頁用的這個窗口跟瀏覽器是什麼關係都不明白。

這 需要一個HTML5的殺手級應用去引導,「Light User」幾乎不會以技術為導向去升級瀏覽器的,他們只會以應用需求為導向去升 級。比如YouTube不再支持IE6用戶,這樣喜歡YouTube視頻的用戶會去升級IE6再來訪問。用戶不會是因為IE6的HTML標準兼容差而選擇 更新IE6,這是必然的。

那HTML5的殺手級應用在哪裡呢?或者說都有Youtube這樣的影響力和號召力嗎?而沒有這種號召力的網 站,誰會貿然率先支持 HTML5來要求用戶升級瀏覽器嗎?這些網站之間必定會陷入囚徒困境中,在重複的囚徒困境中,博弈被反覆地進行。最終才會全面進入 HTML5時代。這個 過程或者很短,也可能很長。畢竟現存的Web前端還沒到不堪的地步,反倒是由於Flash這些插件和jQuery這些JS框架弄的有聲有色。

總結

  • HTML5不是用戶應用的迫切需求,更多是廠商試圖改變軟件生態格局的戰略需求。
  • HTML5的兼容性鑒於各大瀏覽器的以往表現,有待觀望,不宜立即遷移應用。
  • HTML5需要一個成熟完整的開發環境,記事本+瀏覽器對付不了。
  • HTML5功能的暴增,瀏覽器必須有一個高 效的圖形引擎和腳本引擎。
  • HTML5需要殺手級應用來吸引和引導用戶升級瀏覽器,最終完成HTML5終端的部署。
  • Flash是一個不斷在發展的技術,有很強的靈活性,HTML5不可能完全取代Flash,眾多的開發人員也不會斷然拋棄Flash。

來源: http://www.wowbox.com.tw/blog/article.asp?id=3478

Post a comment

 

Loading...