Google將在HTML 5中構(gòu)建Native Client
Google的Native Client(見注釋)目前處于試驗階段,不同于JavaScript或者Flash等需要更多軟件來運行和代碼執(zhí)行的web編程技術(shù),它直接讓瀏覽器在x86處理器上運行模塊程序,從而獲得更高的性能。但使用這種技術(shù)有一個很大的障礙:必須安裝瀏覽器插件。
然而Google想讓Native Client更廣泛地用于瀏覽器,所以將這種技術(shù)構(gòu)建到了HTML中,HTML是創(chuàng)建web頁面的標準。而且在Google的開發(fā)者大會上(Google I/O)Google演示了demonstration。
Native Client的技術(shù)指導David Sehr展示了Web Workers(見注釋)標準,他讓Web頁面分配不同的任務(wù)到獨立的處理線程中,瀏覽器可以同時運行和處理這些線程而不必一個一個排隊處理。Web workers是Native Client發(fā)揚光大的重中之重,然而它還不是正式的HTML 5標準。
為什么Native Client技術(shù)這么重要?因為比較起運行在電腦上的本地程序,當前的瀏覽器運行軟件相對慢得多,所以Google想通過Native Client來顯著提升瀏覽器運行軟件的速度,從而讓其基于web 的軟件更具競爭力。
Google Native Client項目的工程主管Brad Chen在Google開發(fā)者大會上說道,它占用你桌面本地代碼的百分比在個位數(shù)。
從演示中來看Native Client的功能包括視頻解碼、數(shù)據(jù)加密、視頻游戲引擎以及臉部識別。更有趣的是,Native Client可以與另一個Google瀏覽器的插件O3D聯(lián)合工作,從而使得瀏覽器能夠充分利用硬件來加速3D圖形處理。
Google演示的Native Client基于瀏覽器的圖像編輯
結(jié)合O3D,開發(fā)者可以做出更高質(zhì)量的游戲,無論是操作桿游戲還是CAD應用。Chen說。
Google這樣做也是有私心的。旗下的應用包括Google Docs, Google Maps和Gmail都是基于瀏覽器的,Native Client就是為了讓這些應用更加快速從而匹敵桌面技術(shù)比如Microsoft Office。目前Google正在努力解決Native Client的安全問題。
Sehr稱Google的瀏覽器Chrome有望在未來幾周內(nèi)引入Web Worker支持,無疑這將再次提升Google 的Web應用。盡管其他瀏覽器也置入了Web Worker支持,然而目前來說這種技術(shù)還不成熟而且還沒有在瀏覽器中廣泛應用。
在一次采訪中,Chen表示Google計劃通過Web Workers和插件兩種方式來支持Native Client。當然通過Web Workers內(nèi)置在瀏覽器內(nèi)是最好的方式,但是Chen表示W(wǎng)eb Workers還有許多局限性,所以插件也是一種很好的方式。
在下面這個例子中Google演示的是圖像編輯。圖形可以旋轉(zhuǎn)、縮放、顏色調(diào)整等。
注釋:
Native Client:Google的一個新產(chǎn)品,目前出于試驗階段,它能夠幫助網(wǎng)絡(luò)開發(fā)者編寫更強大的Web應用,使得網(wǎng)絡(luò)應用可以直接在本地操作系統(tǒng)上運行,不需通過瀏覽器。Google表示,它可以真正幫助網(wǎng)絡(luò)開發(fā)者提高網(wǎng)絡(luò)應用開發(fā)速度,帶來和桌面應用一樣的體驗。
Web Workers:它為WEB前端網(wǎng)頁上的腳本提供了一種能在后臺進程中運行的方法。一旦它被創(chuàng)建,Web Workers就可以通過postMessage()向任務(wù)池發(fā)送任務(wù)請求,執(zhí)行完之后再通過postMessage()返回消息給創(chuàng)建者指定的事件處理程序(通過onmessage進行捕獲)。 Web Workers進程能夠在不影響用戶界面的情況下處理任務(wù),并且,它還可以使用XMLHttpRequest來處理I/O,無論responseXML和channel屬性是否為null。
您正在閱讀的是《Google將在HTML 5中構(gòu)建Native Client》
【編輯推薦】