[Mugeda HTML5技術(shù)教程] 開篇: HTML5 - 生存,還是毀滅
我們提供的服務(wù)有:成都網(wǎng)站制作、網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、三門峽ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的三門峽網(wǎng)站制作公司
摘要:HTML5并不試圖解決所有問題。但是在很多適合的場合,HTML5是不二選擇。
To be, or not to be, that is the question. -Hamlet
生存,還是毀滅,這是個問題。-《哈姆雷特》
這句500年前困擾哈姆雷特的兩難選題,用來描述今天很多商業(yè)決策者和技術(shù)愛好者在面對HTML5技術(shù)時的心境,可謂再合適不過了。業(yè)界存在無數(shù)混雜的聲音,上至業(yè)界大佬,下至技術(shù)票友,都為HTML5號過脈,算過命,開過方,押過注。蘋果公司的喬幫主曾以一篇《Thoughts On Flash》(《Flash之我見》),祭起了黑Flash挺HTML5的大旗,掀起了第一波對HTML5的廣泛關(guān)注,HTML5的支持者歡欣鼓舞:Flash的冬天來了,HTML5的春天還會遠(yuǎn)嗎?然而兩年后,臉譜公司扎克伯格在TechCrunch上公開承認(rèn)其HTML5戰(zhàn)略的失敗,似乎又為HTML5當(dāng)頭潑了一瓢冷水。諸多媒體的推波助瀾,眾說紛紜,更讓這個問題變得更加撲朔迷離。那么,我們應(yīng)該怎么看待HTML5的前景呢?
首先咱們來同步一下對HTML5的認(rèn)識。HTML5它首先是HTML, 互聯(lián)網(wǎng)的通用語言,這是它的本質(zhì)。這一點上他和他的前輩們沒有區(qū)別,也都是由一些頁面標(biāo)簽(Tag)、樣式表(CSS)和腳本語言組成的。這個本質(zhì)決定了,有互聯(lián)網(wǎng)存在,HTML5就不會消失。HTML5是HTML升級的必然產(chǎn)物,就好像手機(jī)升級操作系統(tǒng)一樣正常。互聯(lián)網(wǎng)越是普及,HTML5也就會隨之普及,直到一天,當(dāng)它變得如此普通,而沒有人會特別留意到它的存在或者是質(zhì)疑其存在。舉個例子吧,網(wǎng)頁設(shè)計師和工程師應(yīng)該都和div標(biāo)簽打過交道,而div其實是在HTML的第4版才正式被吸納。今天大家討論的
然而HTML5之所以不同于之前的HTML版本,是因為它第一次將豐富互聯(lián)網(wǎng)應(yīng)用程序(Rich Internet Aplication, RIA) 作為其設(shè)計目標(biāo),并圍繞此目標(biāo)定義了一整套的應(yīng)用開發(fā)規(guī)范。在HTML5出現(xiàn)之前,HTML更多的是提供單純的內(nèi)容展示和界面交互(聽聽名字就知道其初衷:超文本標(biāo)記語言,文本和標(biāo)記是亮點)。而正是由于這個定位的束縛,在HTML5出現(xiàn)之前,在HTML發(fā)展的10多年間,在網(wǎng)頁應(yīng)用領(lǐng)域沒有太大的突破。RIA相關(guān)的需求(視頻、音頻、動畫、3D等)均通過第三方瀏覽器插件的形式提供,其中大家最熟知的莫過于Adobe公司的Flash內(nèi)容了。那么,既然HTML在這些第三方插件的支持下和平共處了這么長時間,為什么現(xiàn)在有必要定義新的規(guī)范來支持RIA呢?
原因是多方面的。最本質(zhì)的原因是因為互聯(lián)網(wǎng)尤其是移動互聯(lián)網(wǎng)的發(fā)展到今天,舊的互聯(lián)網(wǎng)技術(shù)架構(gòu)已經(jīng)不能滿足新的互聯(lián)網(wǎng)應(yīng)用的需求了。這主要體現(xiàn)在設(shè)備多樣化帶來的新變化上。這些變化包括:
1)設(shè)備多樣性。如今談到互聯(lián)網(wǎng)設(shè)備,已經(jīng)不再局限于Mac, PC, Linux/Unix的范疇,而是PC、智能手機(jī)、平板電腦、智能家電等。在一個微波爐上都可以看YouTube視頻的互聯(lián)網(wǎng)時代,要為如此眾多而千差萬別的設(shè)備開發(fā)應(yīng)用,一定需要一個跨平臺的解決方案。之所以需要一個跨平臺的解決方案,一個重要的原因是開發(fā)成本。舉個例子來說,某知名電子商務(wù)企業(yè)在今年雙十一期間,同時在PC端和移動端推出了小游戲促銷活動。為此,該企業(yè)在開發(fā)了PC端的Flash小游戲版本后,同時需要再為移動網(wǎng)站同時開發(fā)一套HTML5的版本,而且其成本與開發(fā)一個Flash游戲相當(dāng)。這無疑是增大了企業(yè)的負(fù)擔(dān),從長遠(yuǎn)看,這種模式是不可持續(xù)的,必將被一個統(tǒng)一的跨平臺解決方案替代。而放眼目前市面上的技術(shù),HTML5是最具備這種跨平臺能力的技術(shù),沒有之一。
2)能耗需求:移動互聯(lián)網(wǎng)加劇了對新的HTML5標(biāo)準(zhǔn)的需求。智能手機(jī)的續(xù)航能力,對承載移動富媒體應(yīng)用的技術(shù)提出了很高的能耗需求。而傳統(tǒng)的Flash技術(shù),總的來說還是WinTel時代的產(chǎn)物,其體系架構(gòu)和WinTel架構(gòu)有著千絲萬縷的聯(lián)系。而微軟和英特爾,大家都知道是移動互聯(lián)網(wǎng)時代的難兄難弟。就在大約一個月前,高通的市值剛剛超過了英特爾。英特爾芯片的高能耗,使其在移動芯片領(lǐng)域飽受詬病,舉步維艱。有人說Adobe可以重新設(shè)計一套架構(gòu)啊,這個說法理論上成立,對于一個有著逾20年的軟件,絕非一朝一夕之功。一個小插曲:Google當(dāng)年曾經(jīng)和Adobe一起合作采用Flash開發(fā)Google TV上的富媒體應(yīng)用,最終由于系統(tǒng)改動的巨大代價而放棄了。
除此之外,還有很多商業(yè)上的原因。例如,蘋果公司之所以極力推廣HTML5貶斥Flash,有一個重要的原因是看到Flash作為潛在的應(yīng)用平臺對其應(yīng)用商店(App Store)的商業(yè)模式產(chǎn)生沖擊。如今蘋果雖然允許Flash AIR(采用Flash制作的移動應(yīng)用)在應(yīng)用商店上架,但這些應(yīng)用全部都是閹割了平臺功能只能作為單獨應(yīng)用存在。再如,蘋果、谷歌、臉譜、微軟這些互聯(lián)網(wǎng)新舊大佬,也不愿意再看到Adobe公司在移動互聯(lián)網(wǎng)的富媒體方案上延續(xù)其壟斷地位,而自己也沒有能力再另起爐灶開一個新山頭(參考微軟的Silverlight),那就趁重新洗牌的機(jī)會,一起擁抱開放的標(biāo)準(zhǔn)吧。需要指出的是,這些商業(yè)上的博弈,應(yīng)該說是在移動互聯(lián)網(wǎng)發(fā)展大的洪流下的小浪花,不管這些商業(yè)公司主觀上是否愿意,客觀上都是順應(yīng)發(fā)展大勢,并起到了鞏固HTML5地位的效果。
有人說,移動設(shè)備的未來是移動原生應(yīng)用程序(Native Apps), HTML5競爭不過原生應(yīng)用程序。這句話其實是一個誤區(qū),或者是個偽命題。因為這句話的前提,是把原生應(yīng)用和HTML5放在不是你死就是我亡的場景中。而這并不是HTML5存在的初衷,也不是HTML5發(fā)展的方向(替代原生程序)。打個比方,今天如果有人說“電影競爭不過電視”, 估計不會有人有興趣聽,而在電視誕生的初期,的確有過”有電視了,誰還會花錢去看電影呢?”的觀點。而在今天電視和電影都是巨無霸產(chǎn)業(yè),各自為了不同的消費需求而公共存在,相互促進(jìn)。HTML5和Apps的關(guān)系也類似,各自為了不同的需求而存在。其實這個也很好理解,在WinTel時代,網(wǎng)絡(luò)瀏覽器和應(yīng)用程序和平共處了幾十年,誰也沒有替代誰,因為他們面對的應(yīng)用和目的不同。在原生應(yīng)用的領(lǐng)域,由于性能的原因,HTML5不會比原生應(yīng)用表現(xiàn)得更好,這也是臉譜CEO扎克伯格所描述的場景(有興趣的可以找來扎克伯格在TechCrunch上接受采訪的視頻看看)。同樣的,HTML5也有其擅長的領(lǐng)域,核心就是移動互聯(lián)網(wǎng)(Mobile Web),原生應(yīng)用無法有效的進(jìn)入。注意這里說的移動互聯(lián)網(wǎng),指的是直接利用移動瀏覽器(包括其控件)渲染的內(nèi)容而不是指廣義的采用網(wǎng)絡(luò)服務(wù)接口(Web Service Interface)的內(nèi)容,后者包括了移動原生應(yīng)用。
這個說起來比較抽象,具體來說,為移動網(wǎng)站提供內(nèi)容,尤其是動態(tài)內(nèi)容和富媒體內(nèi)容,是今天也是將來移動互聯(lián)網(wǎng)一個發(fā)展的重鎮(zhèn)。是HTML5當(dāng)仁不讓,舍我其誰的領(lǐng)域。有人說,現(xiàn)在大家都用Apps,誰還用移動設(shè)備上網(wǎng)???讓我們來看看幾個數(shù)字:世界上有超過6億網(wǎng)站,而且每年以逾5千萬的速度增長。根據(jù)蘋果的官方數(shù)據(jù),幾個月前iOS上的應(yīng)用超過了1百萬, Android的應(yīng)用也相當(dāng)。也就是說,絕大部分互聯(lián)網(wǎng)內(nèi)容,仍然是通過網(wǎng)站上的網(wǎng)頁來傳遞的。和原生應(yīng)用相比,移動頁面內(nèi)容,在實時傳遞、設(shè)備兼容性、內(nèi)容共享、更新升級、維護(hù)成本等諸多方面,都有很多優(yōu)勢和亮點。且不說大量的所謂原生應(yīng)用,其實是采用移動頁面在呈現(xiàn)內(nèi)容,單是用移動瀏覽器上網(wǎng)的規(guī)模,即將全面超過PC瀏覽器的用戶,在有些國家(例如英國)則是已經(jīng)實現(xiàn)了。大家可以參考下面這張圖,很說明問題。移動上網(wǎng)和移動應(yīng)用一直都在同步增長,不存在相互替代,此消彼長的關(guān)系。因此,放棄移動網(wǎng)站的內(nèi)容,就已經(jīng)在移動搶山頭的競爭中,輸了一半了。
除了移動網(wǎng)站上的頁面,有一些特定的移動應(yīng)用場景,HTML5也是最佳選擇,舉例來說:
1. 移動廣告和營銷。據(jù)一項Jivox在2013年10月進(jìn)行富媒體的超過100家廣告代理參與的調(diào)查顯示,移動廣告對傳統(tǒng)靜態(tài)條幅廣告的需求,下降了逾40%, 而同期對富媒體廣告的需求,則增長了逾50%。富媒體廣告將會是移動廣告發(fā)展的一個大方向。而富媒體廣告完全是建立在HTML5的基礎(chǔ)上的,因為不可能讓用戶為了觀看一個廣告而安裝一個單獨的移動應(yīng)用。國際廣告聯(lián)盟(IAB)規(guī)范中的移動富媒體部分,也是按照HTML5為基礎(chǔ)制訂的。
2. 微信官方賬號。微信官方賬號越來越成為商家必爭的互聯(lián)網(wǎng)入口之一,而基于HTML的內(nèi)容頁成為了這些賬號頁面必不可少的部分。因為通過微信官方賬號直接觀看的內(nèi)容,是直接呈現(xiàn)在微信內(nèi)置瀏覽器中的。如果想要在賬號中引入豐富的應(yīng)用特性,例如視頻、動畫、交互、游戲等,正是HTML5大施拳腳的地方,而移動應(yīng)用則無法有效進(jìn)駐。
3. 跨平臺混合應(yīng)用。充分發(fā)揮原生應(yīng)用高性能,和HTML5應(yīng)用跨平臺特性的混合應(yīng)用,越來越得到企業(yè)和開發(fā)人員的青睞。2013年11月份一項Kendoui網(wǎng)站發(fā)起的逾3500公司決策層(CIO, CTO)和開發(fā)人員參與的調(diào)查顯示(參見下圖), 超過92%的移動移動應(yīng)用選擇不同程度的引入HTML元素,而且比例呈上升趨勢。這也很直觀的說明了HTML5內(nèi)容的生命力。
總結(jié)一下,HTML5,生存還是毀滅,這是一個偽命題。HTML5和原生應(yīng)用并不是有你沒我的生死之爭,兩者分別代表的移動應(yīng)用的兩種需求,共同存在,一起發(fā)展。隨著移動互聯(lián)網(wǎng)的壯大,HTML5只會越來越多的被企業(yè)和開發(fā)人員采用,這是行業(yè)發(fā)展的自然選擇過程和必然結(jié)果。