微軟宣布,與Google及Mozilla等瀏覽器業者都已加入WebAssembly專案以共同開發此一可加快瀏覽器載入網頁速度的新格式標準。
WebAssembly是一個專為網站設計的新二進位格式,未來可望取代asm.js。asm.js為Javascript的最佳化子集,捨棄了一些Javascript的功能以換取執行效能,多數的Javascript引擎是將Javascript程式轉成二進位碼再轉成機械碼,而asm.js則能繞過第一個編譯步驟。
根據該專案的說明,二進位的WebAssembly格式的JS語法分析(parsing)速度可加快20倍以上,在行動裝置上,光是解析大型的程式碼往往動輒就耗去20-40秒時間,若能直接原生解碼便能大幅提昇使用經驗 。WebAssembly還能突破asm.js在預編譯上的限制,而且就算沒有特定的最佳化asm.js也能擁有良好的執行效能。此外,它還允許瀏覽器把WebAssembly部署在既有的Javascript引擎上,就像是一個新的Javascript功能,因而降低了瀏覽器業者採納新標準的成本。
微軟說明,WebAssembly能以二進位格式遞送JavaScript檔案,其載入速度快過一般的JavaScript文字檔,將會加速瀏覽器的網頁載入速度,在行動裝置上特別重要。
微軟也期望未來WebAssembly的發展能夠與JavaScript保持良好的互動、支援更多的語言,以及帶來原生效能。
WebAssembly初期鎖定C/C++程式語言,並支援Emscripten與PNaCl等基於LLVM的編譯器,亦計畫於未來支援更多的程式語言與編譯器。WebAssembly目前仍處早期發展階段,尚無詳細的規格或設計內容,但外界相信它在三大瀏覽器業者的支援下很快就會被發揚光大。(編譯/陳曉莉)
熱門新聞
2024-12-22
2024-12-20
2024-12-22
2024-12-20