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