|
上篇:HTML5筆記(1) - HTML5的定義
前言
上學(xué)時導(dǎo)師教導(dǎo)過我們,學(xué)習(xí)新技術(shù)、新標(biāo)準(zhǔn)規(guī)范時,要經(jīng)常針對細節(jié)問自己:這部分為什么會這么定義;堅持思考,某一天你才有可能成為規(guī)則制定者中的一員。所以我“為賦新詞強說愁”,為思考而思考:為什么會有HTML5。
預(yù)感到下文可能會有點羅嗦,就先把兩種提法列出來,再細說之:
- HTML5是互聯(lián)網(wǎng)發(fā)展的必然產(chǎn)物,是“網(wǎng)頁(Web Page)”向“網(wǎng)應(yīng)用(Web Application)”升級的工具
- HTML5不是用戶應(yīng)用的迫切需求,更多是廠商們試圖改變軟件生態(tài)格局的戰(zhàn)略需求
1. 背景
一般而言,有HTML4就會有HTML5(盡管HTML2之后的HTML3并未真正發(fā)布就終止了,取而代之的是HTML3.2),就像iPhone5緊隨iPhone4而來。
最早的HTML草案于1993年提出,幾乎是在WWW的誕生那天就一起產(chǎn)生了。HTML4發(fā)布于1997年,見證了2000年互聯(lián)網(wǎng)泡沫的產(chǎn)生和破滅。HTML5將于15年之后發(fā)布,不知是否在冥冥之中也意味著第二次泡沫——移動互聯(lián)網(wǎng)的泡沫。HTML4的生命力如此頑強,應(yīng)用如此流行,技術(shù)上得益于它與JavaScript、AJAX+JSON等技術(shù)的良好結(jié)合,也為HTML5的出現(xiàn)打下了堅實的基礎(chǔ)。
所以,HTML5的出現(xiàn)是因為開發(fā)者們(注意不一定是用戶)已經(jīng)不再滿足于HTML4所能提供的那些功能集了。說得淺顯一點,就如同互聯(lián)網(wǎng)的初期,人們上網(wǎng)只能看到?jīng)]有任何格式的純文本,無圖無真相啊——于是網(wǎng)頁便有了圖,并且一度流行各種滾動的圖(例如在HTML5中被廢棄掉的Marquee);不能光看貼不回帖啊——于是有了各種表單來提交用戶數(shù)據(jù);網(wǎng)頁不能不動啊,于是便有了JavaScript來控制網(wǎng)頁元素...隨著時間的推移,人們覺得,你不能總是“網(wǎng)頁(Web Page)”啊,你還得是“網(wǎng)應(yīng)用(Web App)”,于是便有了HTML5。
HTML5其實不是全新的技術(shù),從某種意義而言,HTML5其實就是“擴展的HTML4 + 若干應(yīng)用接口”。
2. 誰需要HTML5?
或者換一個角度來提問:誰需要HTML5?不論答案是什么,都不可能是用戶,因為用戶只關(guān)心功能和體驗,沒有哪個用戶會真正關(guān)心他/她玩的開心農(nóng)場到底是用HTML5還是用Flash,甚至是用匯編語言來寫的。
按照慣常的說法,谷歌、蘋果等這些大公司最需要HTML5,它們同時也是最積極的倡導(dǎo)者——雖然目的各不相同。而相同的目的之一是借HTML5為據(jù)點,以圖蠶食它們最大的共同敵人——微軟帝國——的桌面領(lǐng)地,因為微軟圍繞自己占有絕對統(tǒng)治地位的操作系統(tǒng)份額,以及全面的商用軟件所建立起來的軟硬件(Wintel)生態(tài)環(huán)境是如此成熟,幾乎已經(jīng)不太可能成為正面戰(zhàn)場了。
谷歌以網(wǎng)絡(luò)和搜索起家,其核心技術(shù)從一開始就都在“云”端:從搜索、Gmail到Google Doc,到它為開發(fā)者們提供的數(shù)不清的API編程接口(例如Maps)。按照谷歌的設(shè)想,絕大多數(shù)時間用戶只需要一個帶有瀏覽器的互聯(lián)網(wǎng)接入終端,就能滿足其大部分日常需求,Chrome OS就是符合這一戰(zhàn)略指導(dǎo)的產(chǎn)物。蘋果同樣有自己一套成熟的軟硬件生態(tài)系統(tǒng),并且創(chuàng)造了應(yīng)用商店這一全新的商業(yè)模式,基于封閉硬件系統(tǒng)的“應(yīng)用+瀏覽器”模式提供了幾乎完美的用戶體驗,所以HTML5也是合理之選,更何況后者還能順帶幫忙剔除Adobe Flash這顆眼中釘——誰會允許對手在自己的地盤上開一個不受控制的店中店?
順便提一下,若沒有蘋果前幾年對瀏覽器渲染引擎WebKit(連這個名字也是蘋果起的)的大規(guī)模代碼重構(gòu),WebKit未必會如此受開發(fā)者們推崇。
即便是微軟,也在近期發(fā)布的IE9中宣布了對W3C標(biāo)準(zhǔn)規(guī)范的隆重回歸,同時號召用戶棄用飽受詬病的IE6。IE瀏覽器畢竟占有最大的市場份額,微軟畢竟還有Silverlight,其背后畢竟還有微軟帝國,所以支持HTML5顯然利大于弊。
瀏覽器廠商們也會歡迎HTML5,新技術(shù)總是帶來新的商業(yè)機會——否則你讓它們的首頁如何持續(xù)更新?更重要的是,這幾乎是它們能夠取代共同敵人——份額排名第一的微軟IE——的唯一機會。試想如果W3C宣布HTML4就是最終版本,各大瀏覽器廠商還有什么好玩的嗎?正是不斷升級更新的規(guī)范和標(biāo)準(zhǔn)將它們約束在同一個跑道上賽跑,不然分裂和異化很快就會出現(xiàn)——或許情況會比眾多的Linux和Android分支還要惡劣很多。
例如:蘋果會針對設(shè)備提供陀螺儀接口,谷歌會提供語音或地圖接口,F(xiàn)ireFox提供Add-on插件接口...實際上現(xiàn)在開發(fā)者們就已經(jīng)不得不面對一堆“-webkit-”或“-moz-”開頭的私有CSS樣式標(biāo)簽了。
應(yīng)用開發(fā)者們也會喜歡,尤其是隨著移動互聯(lián)時代的帶來,潛在的幾十億移動用戶帶來了軟件行業(yè)重新洗牌的好機會。試想一下,假如哪天一個網(wǎng)頁應(yīng)用都能達到與本地應(yīng)用相近的功能甚至體驗,那么Sun的桌面遺愿“寫一次,到處運行(write once, run everywhere)”的這一跨平臺夢想不就實現(xiàn)了嗎?如果一個基于HTML5的“憤怒的小鳥”能夠平滑運行于ios、Android、Windows Phone 7,甚至Symbian等移動平臺之上,那開發(fā)者們投入產(chǎn)出比該有多大啊。
歡迎HTML5的名單還能列出一大串,華爾街投資者們、媒體、培訓(xùn)機構(gòu)、出版社、廣告主、互聯(lián)網(wǎng)站...每次只要有互聯(lián)網(wǎng)新技術(shù)出現(xiàn),這些人都能從中分得一杯羹,既然有共同利益,為何不一起鼓噪呢?
什么?Adobe不喜歡?也許吧,不過誰在乎它呢...或許它會為我們帶來一款超越Dreamweaver的HTML5+CSS3+JavaScript開發(fā)套件。
唯一不關(guān)心的只有用戶,雖然所有這一切,爭奪的都是用戶。(作為一個普通的用戶,只要你細心觀察,就會發(fā)現(xiàn)幾乎行業(yè)里的每個人都對你口袋里的錢虎視眈眈...)
3. 為什么需要HTML5
說了半天仿佛這里頭有一個天大的陰謀,其實以上闡述恰恰說明了一個問題:HTML5作為解決問題的一種新技術(shù),它是一種符合大多數(shù)人期望和利益的。
互聯(lián)網(wǎng)就像一個標(biāo)準(zhǔn)電網(wǎng),不同規(guī)格的軟硬件要想接入這個標(biāo)準(zhǔn)電網(wǎng),只能通過瀏覽器這個轉(zhuǎn)化插頭來實現(xiàn)。W3C是個制定互聯(lián)網(wǎng)規(guī)范的組織,更是一個由眾多商業(yè)成員(包括眾多瀏覽器廠商)組成的俱樂部,所有提議和爭論最終都得經(jīng)過各個成員的共同協(xié)商。所以HTML5是一種妥協(xié)的技術(shù)——但仍然是一個進步的技術(shù)。生產(chǎn)者們迫切需要一種新技術(shù)來解決當(dāng)前的諸多問題,HTML5是其中一個選擇,它可能不是最好,卻是最適合這個時期的,能滿足利益最大化的必然之選。
是否可以這么認(rèn)為:HTML5對移動互聯(lián)網(wǎng)的意義可能更大于它對傳統(tǒng)PC桌面的意義。首先因為這是一個新興的持續(xù)增長的“空白”領(lǐng)域,新的參與者們希望通過新技術(shù)來與老巨頭們一爭高下;其次移動設(shè)備上的操作系統(tǒng)比桌面時代更多,而且暫時還看不到那一家會獲得像Windows那樣的桌面統(tǒng)治地位,HTML5看似滿足了人們write once, run everywhere的奢求。
從爭奪用戶的角度而言,HTML5的優(yōu)勢在于快速部署和簡單升級——無論是對客戶端還是云端(現(xiàn)在不流行說“服務(wù)器”端了)。試想你有以下設(shè)備:一個Windows臺式機,一臺蘋果筆記本,一只Android手機,一個Kindle閱讀器,還有一部Playbook平板(假設(shè)是某人送給你的禮物吧),家里還有一臺Sony剛推出的Google TV,甚至Adobe烤爐什么的...并且有一個你需要在所有設(shè)備上使用的殺手級應(yīng)用(我不知道會是什么,但我相信所有廠商們都在琢磨這事),你會受得了一個一個去安裝嗎?HTML5的好處就是你只需要打開瀏覽器,點擊運行即可。
?。ɑ蛟S你會對此嗤之以鼻:哪個SB會同時買那么設(shè)備?那你可能會傷到很多人,可能包括未來的自己...)
這大概就是廠商和媒體們都在描繪的美好藍圖。有時候我在想,在這個生產(chǎn)過剩的時代,各種應(yīng)用程序(App)實在太多了,很多時候不是用戶需要應(yīng)用,而是應(yīng)用需要用戶。我們都知道,在互聯(lián)網(wǎng)經(jīng)濟里,只有點擊才能產(chǎn)生利潤,而在海量的應(yīng)用程序面前,“點擊-運行”和“點擊-下載-安裝-運行”對于如何吸引用戶而言,顯然是兩種截然不同的體驗。所以才需要HTML5來提供了這么一種可能:快速注意和輕易嘗試。
簡而言之,HTML5能最大程度的“誘使”用戶去嘗試甚至喜歡你的產(chǎn)品。
我還想到了媒體出版領(lǐng)域,數(shù)字電子化對傳統(tǒng)的媒體和出版商帶來了不可避免的強大沖擊,與其負(fù)隅頑抗直至壯烈犧牲,還不如早日投身新技術(shù),借助HTML5來完成出版發(fā)行的華麗轉(zhuǎn)身,好處何嘗不是多多:降低紙質(zhì)成本、傳統(tǒng)發(fā)行渠道成本、平面內(nèi)容的多媒體化、更好的視頻廣告效果、更準(zhǔn)確的廣告投放、應(yīng)用內(nèi)付費、即時搜索、即時用戶反饋、海量用戶數(shù)據(jù)...最后這一點最令人垂涎吧?所以相對于呼聲最高的HTML5游戲,我個人更希望看到HTML5媒體。
4. HTML5的優(yōu)勢
我一直覺得,在技術(shù)領(lǐng)域,任何問題都可能是問題,唯獨技術(shù)本身不是問題。
這話有些拗口,但我們回頭看看不遠的歷史,隨便都能找到一些案例。例如摩托羅拉主導(dǎo)的“銥星計劃”,就算是放在今天來看,技術(shù)上也是十分宏偉的一個項目——但是除了技術(shù)它幾乎什么都缺,時機不對,既缺支持者又缺使用者。在看看上個世紀(jì)末的ATM交換技術(shù),到現(xiàn)在的IPv6,在技術(shù)上都比IPv4先進,可是都很難甚至無法將后者完全取代。
相對而言,HTML5的優(yōu)勢幾乎是天然的。
在技術(shù)上,HTML技術(shù)已歷經(jīng)了近20年的磨礪和完善,HTML5又繼承了前任HTML4、甚至是Flash的廣大開發(fā)人員,及其豐富的技術(shù)遺產(chǎn),很有點水到渠成的意思。最重要的是,HTML5是基于成熟技術(shù)上的演進,而不是劇烈變革甚至推倒重來——它的另外一個版本XHTML2險些干了這樣的蠢事,現(xiàn)在已經(jīng)壽終正寢了。
在時間上,如今正好借著互聯(lián)網(wǎng)熱潮再次興起的天時,利用移動互聯(lián)網(wǎng)的“泡沫”(泡沫在這里不是貶義詞,而是代表著人氣、熱情、資本...等正面因素)來迅速取得流行和發(fā)展。
在廠商方面,幾乎是一邊倒的支持(跟著喊喊口號的也算),甚至看似不太相關(guān)的行業(yè)也來湊熱鬧(聽說一些博彩公司已經(jīng)在招HTML5開發(fā)人員了)。正是由于HTML5的開放性,才使得這些即使在W3C會議桌上都互不相讓的競爭者、甚至死對頭坐到了一起,形成一個相互競爭相互促進的良性循環(huán)。
在開發(fā)者方面,因為有了HTML4的積累,程序員們需要更新的知識并不多,真正要理解的反而一些新的理念和模式。另外堪比HTML4時代的海量的示例代碼很快就會出現(xiàn),學(xué)習(xí)門檻已經(jīng)不能再低了。
當(dāng)然,剛剛起步的HTML5也不可避免有很多問題,另文再談。
5. 小結(jié)
又回到最初的兩個觀點了(不管怎樣,用戶不關(guān)心這些):
- HTML5是互聯(lián)網(wǎng)發(fā)展的必然產(chǎn)物,是“網(wǎng)頁(Web Page)”向“網(wǎng)應(yīng)用(Web Application)”升級的工具
- HTML5不是用戶應(yīng)用的迫切需求,更多是廠商們試圖改變軟件生態(tài)格局的戰(zhàn)略需求
或許還有其它觀點,但誰說它們必須是對立的,答案只能有一個呢?偉人說過:我思考我就存在,更何況我還寫了小結(jié)...
it知識庫:HTML5筆記(2) - 為什么需要HTML5,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。