宋菲婭
大連理工大學 遼寧 116621
自從1993年6月發布第一版超文本標記語言--HTML,它便成為構成網頁文檔的主流語言。隨著網絡的不斷發展,舊版本的 HTML已經很難跟上開發人員和使用者日益加快的步伐。為了適應快速發展的Web技術以及不斷提出的Web應用需求,HTML5應運而生。HTML 5的第一份正式草案于2008年1月22日公布,隨后一直處于發展狀態。目前大部分瀏覽器如Chrome、IE、Firefox、Opera等均可不同程度地支持HTML5。
這個新特性實現了數據的實時傳送,使得服務器與客戶端、瀏覽器之間能夠雙向連接,直到明確關閉該連接才斷開。通過Web Socket技術構建的HTML5應用,用戶不再需要頻繁的刷新頁面以獲取新數據,新數據會自動由服務器端推送至用戶的電腦屏幕上。這就大大擴展了網頁自動獲取新數據的功能,達到即時聊天工具的效果。
雖然目前無線網的覆蓋率在逐步擴大,但由于飛機、火車等交通工具或封閉室內環境的限制,使得基于網絡連接的Web應用受到制約。HTML5的離線存儲功能很好地解決了這個問題。它的Web Storage API會生成一個包含一系列URL的列表文件,這些URL可以指向HTML、JavaScript、css等資源,瀏覽器一旦讀取這個文件,就會下載相關資源并緩存在本地,保證用戶離線后仍然可以訪問。
隨著移動網絡的流行,用戶對實時定位的需求也越來越高。HTML5提供應用接口--Geolocation API,能夠通過GPS或者網絡信息獲取用戶當前位置。在室外空間信號強度高,GPS能發揮定位作用;但在打雷下雨天氣或周圍遮擋物較多時,根據IP、WiFi、MAC地址等可以推斷出位置信息。
HTML5中video元素支持OGG、WebM及MPEG4三種視頻格式,audio元素支持OGG、MP3及WAV三種音頻格式。audio和video標簽讓Web頁面輕松實現媒體的嵌入,它們的編碼標準是中立的,意味著瀏覽器廠商可以自己使用任何種編碼輸出媒體。HTML5對音頻、視頻文件的支持使得瀏覽器擺脫了對插件的依賴,加快了頁面的加載速度,擴展了互聯網多媒體技術的發展空間。
HTML5 的canvas標簽使用JavaScript 在網頁上繪制圖像,擁有多種繪制矩形、路徑、字符及添加圖像的方法,可以控制畫布中的每一像素,用戶不使用其他插件便可在網頁上隨意涂鴉。除此之外,開發者可以充分利用這一標簽,開發出更加頁面更加絢麗的交互式游戲。
HTML5的File API接口設計,使得類似于桌面的文件拖拽并上傳到服務器成為可能。這一技術改變了傳統 Web應用程序上傳文件的方式,不僅給用戶帶來了方便,而且內存管理系統在需要大量文件上傳時也會從中受益。
HTML5中的多線程是指在Web應用程序中可以并發執行多個JavaScript 腳本,每個腳本執行都是彼此獨立的一個線程。HTML5中提出了工作線程(Web Worker)的概念,并希望具有響應時間長、啟動性能良好、內存消耗低的特征。工作線程的引入使得JavaScript引擎可以并發地執行JavaScript代碼,從而實現了對瀏覽器端多線程編程的支持。
表單負責數據采集功能,是Web應用程序中的重要組成部分。其中的數據驗證功能需要瀏覽器一方借助腳本檢查表單信息。HTML5提供了新的表單樣式工具,提高輸入類型多樣化,表單結構也更加自由,開發者可以開發出更加智能的表單輸入。
新的結構元素:
(1)
(2)
(3)
(4)
新的內聯元素:
(1)
(2)
(3)
新的內嵌元素:
(1)
(2)
新的交互元素:
(1)
(2)
(3)
HTML5引入新特性的同時也帶來了新的問題。Web socket為瀏覽器提供了網絡通信堆棧,攻擊者利用這項特性,可以輕易地進行后門通信。使用離線存儲功能時,由于數據存儲在本地并且永不過期,攻擊者很可能盜取這些未加密數據,造成用戶的個人信息泄露。根據地理定位,攻擊者可以隨時獲取任何人的位置信息,給用戶帶來不必要的麻煩。雖然HTML5能夠進行多媒體播放,但可支持的音頻、視頻格式有限,在技術上還需要很大的提高才能完全丟棄插件。
除此之外,HTML5的發展也受到社會、公司、開發者等方方面面的約束。目前支持HTML5技術的僅有少數最新版本的瀏覽器,并且支持程度參差不齊,不能保證最大限度地發揮HTML5的優勢。同時HTML5仍處在不斷地研究與完善中,并沒有得以廣泛應用。在它的發展期間,Flash等將要在HTML5中被廢棄的插件將會不斷發展,獲取最新的用戶體驗。HTML5能否在未來超越插件、獲取用戶的青睞不可預測。同時新標簽的引入對開發者和圖形設計師而言是一個巨變,他們能否接受并適應這些變化,決定了HTML5將何去何從。
快速發展的HTML5浪潮激發了人們無限的遐想,相對于其他標準的領先優勢讓許多人視它為未來 Web應用的主宰。但無數的歷史經驗告訴我們:好的標準未必是最后的勝利者。HTML5目前只是初具規模,它還需要不斷研究與完善。我們應當實時審時度勢,發展壯大新技術,最終實現成為下一代Web應用開發標準的目標。
[1]White Paper.Towards Real-time Interaction on the Web[EB/OL].2010-03-12[2010-11-05].http://pulsarlabs.org/files/2010-03-12_PulsarLabs_White_Paper.pdf.
[2]劉天寅.HTML5與未來的WEB應用平臺[J].陰山學刊.2010.
[3]沈建苗.警惕 HTML5引發新的安全問題[N].計算機世界.2010.