微軟的“本地化HTML5”究竟意味著什么?
微軟在近日的演講中,自豪地展示了IE10的首個(gè)平臺(tái)預(yù)覽版。但在其大肆宣揚(yáng)性能提升的同時(shí),卻忽略了一個(gè)更為重要的問(wèn)題。所謂的“本地化HTML5”究竟指的是什么??jī)H僅是硬件加速而已嗎?我們可不這么認(rèn)為。
與此同時(shí),在IE博客上發(fā)表的新聞稿中盡管大量談?wù)摿岁P(guān)于標(biāo)準(zhǔn)的話題,但從前三段的表述中仍舊可以嗅探到一些微軟未來(lái)的發(fā)展規(guī)劃。
首個(gè)IE10平臺(tái)預(yù)覽版,今日已提供下載,這是邁向未來(lái)支持本地化HTML5過(guò)程的第一步。在針對(duì)終端操作系統(tǒng)進(jìn)行過(guò)優(yōu)化的瀏覽器上,以本地化的方式運(yùn)行網(wǎng)站和HTML5,可獲得更快速的操作體驗(yàn)。
我們?cè)贗E9的基礎(chǔ)上,構(gòu)建了對(duì)HTML5的支持,同時(shí)通過(guò)Windows來(lái)傳遞更多的本地化HTML5體驗(yàn),以及windows上最好的瀏覽體驗(yàn)。IE10延續(xù)了IE9的路線,直接使用了Windows提供的組件,規(guī)避了由抽象、層,以及會(huì)降低瀏覽速度和體驗(yàn)的類庫(kù)等。
目前為止,這種本地化的Web和HTML5體驗(yàn)只能通過(guò)Windows 7和IE9來(lái)實(shí)現(xiàn)。IE9可借助于操作系統(tǒng)提供的便利來(lái)達(dá)到最大的性能、可用性以及可靠性——從底層的圖形堆棧到交互界面中的跳轉(zhuǎn)列表(Jump List)等。四周前,我們面向全球的企業(yè)和用戶,發(fā)布了一款快速、整潔、可靠并且交互良好的IE9,以此來(lái)傳遞最佳的HTML5體驗(yàn)。最好的HTML5相對(duì)于操作系統(tǒng)來(lái)說(shuō)是本地化的,因此Web站點(diǎn)使用的傳輸層也是最少的。最好的HTML5允許站點(diǎn)在不同瀏覽器下使用相同的標(biāo)記——相同的HTML、CSS和腳本。最好的HTML5可以為開(kāi)發(fā)者節(jié)省時(shí)間,同時(shí)通過(guò)相同標(biāo)記即可將支持HTML5功能的站點(diǎn),與使用其他不穩(wěn)定技術(shù)的站點(diǎn)區(qū)分開(kāi)。
顯然跳轉(zhuǎn)列表與硬件加速和性能是無(wú)關(guān)的。所以,真正要發(fā)生的是,微軟要把HTML5與本地化的Windows應(yīng)用綁定在一起。跳轉(zhuǎn)列表只不過(guò)是冰山一角,后續(xù)還有更艱難的工作有待完成。
為了看得更明白一點(diǎn),我們首先要區(qū)分出本地應(yīng)用與Web應(yīng)用究竟有哪些不同?然后除去HTML5標(biāo)準(zhǔn)中所涵蓋的內(nèi)容。舉例說(shuō)來(lái),Web版的文檔編輯器需要具備哪些特性?
1.文本編輯
2.格式化
3.字體
4.本地或網(wǎng)絡(luò)驅(qū)動(dòng)器加載或保存文件
5.由Web加載或保存文件
6.拼寫(xiě)和語(yǔ)法檢查
7.最近訪問(wèn)文檔的支持
8.從開(kāi)始菜單中啟動(dòng)
9.支持離線操作
前兩項(xiàng)很容易實(shí)現(xiàn)。CSS3中的字體組件很容易滿足第三項(xiàng)。第四項(xiàng)是我們首先要解決的。將文件保存到本地或網(wǎng)絡(luò)設(shè)備很容易實(shí)現(xiàn),打開(kāi)它們卻并非易事。不能通過(guò)簡(jiǎn)單的文檔雙擊操作在瀏覽器中打開(kāi)一個(gè)網(wǎng)站,緊接著再在網(wǎng)站中加載和展現(xiàn)文檔。因此,將文檔類型與Web應(yīng)用關(guān)聯(lián)的特性是首要解決的問(wèn)題。
接著往下看,從網(wǎng)頁(yè)中加載和保存文檔不用費(fèi)什么腦子。拼寫(xiě)和語(yǔ)法檢查,正確的做法是通過(guò)HTML5的Web Workers實(shí)現(xiàn)。對(duì)最近訪問(wèn)文檔的支持,是我們的下一步重點(diǎn)。雖然這個(gè)功能不是每個(gè)人都會(huì)用到,但如果列表不支持動(dòng)態(tài)更新的話,會(huì)給使用此功能的用戶帶來(lái)很大困擾。
從開(kāi)始菜單中加載是所有應(yīng)用程序都期望做到的。通過(guò)IE9,可將網(wǎng)站“釘”在開(kāi)始菜單中,這個(gè)通過(guò)拖拽一個(gè)快捷方式即可實(shí)現(xiàn)。如果傳言屬實(shí)的話,Windows 8將會(huì)引入一個(gè)名為AppX的包部署結(jié)構(gòu)來(lái)讓這件事變得簡(jiǎn)單。依照@LongZheng的說(shuō)法,通過(guò)AppX能夠?qū)⒕W(wǎng)站描述為目標(biāo)而不是被編譯過(guò)的應(yīng)用。
最后一項(xiàng)是真正的挑戰(zhàn)。要具備像本地應(yīng)用一樣的“性能、可用性以及可靠性”,Web應(yīng)用需要具備在未取得服務(wù)器授權(quán)情況下的運(yùn)行能力。以前有很多種辦法實(shí)現(xiàn)這個(gè)功能,但是由于各種原因,大多數(shù)的嘗試都失敗了,其中包括太多的對(duì)服務(wù)端處理的依賴,以及瀏覽器緩存的不穩(wěn)定性等。眼下借助于流行的JavaScript增強(qiáng)的功能及性能,類似于這種的大部分的服務(wù)端處理都可以被轉(zhuǎn)移到客戶端來(lái)實(shí)現(xiàn),這也是理所當(dāng)然的。瀏覽器緩存也可以通過(guò)配置或增強(qiáng),從而達(dá)到防止“已安裝的Web Apps"被誤刪除的效果。
以此概括出我們的功能清單如下:
1)件類型與Web Apps的關(guān)聯(lián)
2)期訪問(wèn)的文檔
3)始菜單集成
4)eb Apps的持久緩存
我們尚不清楚微軟何時(shí)或是否會(huì)實(shí)現(xiàn)其他特性,也沒(méi)有人知道那些許多應(yīng)用都想變得和本地應(yīng)用一樣的功能是否會(huì)實(shí)現(xiàn)。但可以肯定的是,微軟要想成功提供“本地化HTML5”的支持,就需要借助于網(wǎng)站開(kāi)發(fā)人員,當(dāng)然這些都不是免費(fèi)的。開(kāi)發(fā)人員需要在其網(wǎng)站上明確的使用它。而且到目前為止,其他瀏覽器廠商也明確表示對(duì)提供以Windows為中心的特性沒(méi)有興趣,開(kāi)發(fā)人員也只能針對(duì)IE用戶來(lái)開(kāi)發(fā)特性。
幸運(yùn)的是,這畢竟是個(gè)好消息。因?yàn)檫@個(gè)戰(zhàn)略仍舊需要支持大部分,盡管不是所有新的HTML 5和CSS 3規(guī)范,Web開(kāi)發(fā)人員即使不考慮Windows平臺(tái),也同樣會(huì)取得成功。因?yàn)镮E會(huì)在標(biāo)準(zhǔn)確立后,緊接著實(shí)現(xiàn)這些功能,到時(shí)候其他瀏覽器廠商也不會(huì)甘愿落在微軟之后的。
查看英文原文:http://www.infoq.com/news/2011/04/Native-HTML5
【編輯推薦】