隨著HTML 5技術(shù)的不斷發(fā)展,有關(guān)它的話題討論越來越熱烈,比如HTML 5存在哪些不足、開發(fā)人員應(yīng)該嘗試還是旁觀等等。Opera專家謝子斌將為大家解讀HTML的歷史和發(fā)展。
HTML 5的歷史
HTML5是W3C的一個規(guī)范。如果追溯起源,并非W3C提出的HTML5。它最初起源于一個叫做WHATWG的小組。2004年,W3C正建立XHTML2的規(guī)范,Opera和火狐當(dāng)時給W3C提供了一些改善HTML標(biāo)準(zhǔn)的建議,但是W3C拒絕了這個報告。Opera和火狐還有蘋果三個公司的技術(shù)人員共同成立了WHATWG小組,開始一起制定HTML4的規(guī)范,但還是不叫HTML5。直到2007年W3C決定開始制定后HTML4的規(guī)范,我們才把自己寫的一些規(guī)范并入W3C剛成立的HTML5小組。
瀏覽器廠商對HTML 5的態(tài)度
W3C有700多個會員,其中包括很多瀏覽器廠商,谷歌、微軟、Opera、火狐等。他們參與了規(guī)范的制定,在推出之前,爭執(zhí)和討論早已發(fā)生,內(nèi)部已經(jīng)統(tǒng)一了對規(guī)范的看法,所以對HTML5的支持,大家基本都是一致的。雖然有我們不滿意的地方,但是我們在實施HTML5的時候基本是希望看到兼容性的,比方說你是第一個實現(xiàn)HTML5某個技術(shù)的瀏覽器,他肯定也希望其他瀏覽器廠商能實現(xiàn)這個技術(shù)。因為只有大家都實現(xiàn)這個技術(shù)的時候,程序員才會采用這種技術(shù)。如果只在特定瀏覽器才能實現(xiàn),那么程序員可能就會采用這個技術(shù)應(yīng)用。這種技術(shù)上的實現(xiàn)和推廣可以比作一個長跑,可能是你暫時領(lǐng)先,也可能暫時是我領(lǐng)先,但是只有大家都跑到終點,這場長跑才會結(jié)束。
Web應(yīng)用架構(gòu)師和開發(fā)人員對待HTML 5的態(tài)度
大家使用HTML5只是一個時間問題。不管你現(xiàn)在使用,還是兩年后再使用,但是最后肯定是要使用HTML5。我們在推廣的時候,就考慮到這個方面,采用所謂優(yōu)雅降級的做法,可以嘗試提供一些HTML5技術(shù)給前衛(wèi)的用戶來體驗,同時也不拒絕一般用戶,比如說IE6的用戶,雖然不能使用HTML5,但是可以瀏覽加入該技術(shù)應(yīng)用的網(wǎng)站。比方說CSS 3,它不是HTML 5,但有些人把他們混為一談,你用它在圖片上實現(xiàn)一個圓角的效果,我覺得可以采用這種優(yōu)雅的方式,如果你的瀏覽器可以實現(xiàn),你就給它一個圓角的效果,如果不能,則給它一個一般的效果就可以了。大家都可以瀏覽你的網(wǎng)站。再比方說video標(biāo)簽,IE 6雖然不能使用這個標(biāo)簽,但是它能讀取里面的內(nèi)容。
目前HTML 5在企業(yè)級的應(yīng)用
有挺多的網(wǎng)站都使用HTML5了,比方說youtube,他們就開始使用HTML5的video標(biāo)簽了。之前youtube上面都是flash,他們現(xiàn)在也有一個HTML5版本了,目前應(yīng)該正在測試中。
HTML 5存在的不足
每個語法都有他的缺點,HTML5當(dāng)然也有,也許有人會說HTML 5若干年后才能應(yīng)用,媒體也有這樣的報道出現(xiàn)。在這里就可以提到HTML5的規(guī)范上面來,因為這是一個多人參與的透明的過程,如果進度快的話,可能就會有很多缺陷產(chǎn)生。所以這不可能是一次性完成的事情。因為規(guī)范太多,只是HTML5的規(guī)范目前就有900多頁,然后再加上與HTML有關(guān)的Canvas、SVG、離線儲存等等,如果想要很好的把它們和HTML5統(tǒng)一起來,不可能是短時間就能完成的事情。不過話說回來,需要一點時間完善這些規(guī)范也不算是一個缺點。
另外的缺點的就是,在中國,可能有不少用戶使用IE6,在IE6上HTML5是不兼容的,這個問題比較棘手,但是微軟已經(jīng)意識到這個問題,所以在IE9的開發(fā)就比較關(guān)注HTML5。當(dāng)然肯定還有其他缺點,雖然目前還是有很多,但是我覺得優(yōu)點遠遠多于缺點,而且完備是需要一個過程的。
HTML 5、Flash和SilverLight的關(guān)系
我覺得Flash技術(shù)做的非常好,他讓開發(fā)人員可以使用很多之前不能用的技術(shù)。當(dāng)然HTML5一些技術(shù)和Flash相似的地方,Canvas和SVG相比Flash的優(yōu)勢源于W3C里面多家瀏覽器廠商參與技術(shù)的透明性,F(xiàn)lash技術(shù)畢竟是一家公司掌控。
Silverlight和Flash情況是差不多的,始終由一家公司控制,他就像一個黑箱,不透明。如果收費的話,大家只能給錢。而HTML5則是透明開放的,因為幾百家公司都有參與,是免費的。其實Flash之所以受歡迎,主要Adobe公司提供了一個很好的IDE界面。HTML5缺乏一個強大的IDE。