據(jù)國外媒體報(bào)道,包括谷歌、蘋果、微軟以及Mozilla在內(nèi)的主流瀏覽器開發(fā)商正攜手開發(fā)一種稱之為“WebAssembly”的全新標(biāo)準(zhǔn),旨在提高編譯后Web應(yīng)用程序的性能。
WebAssembly是一種全新的可供計(jì)算機(jī)讀取的指令集,又稱字節(jié)碼,能夠讓那些以非JavaScript代碼形式撰寫的應(yīng)用在瀏覽器上更加有效率的運(yùn)行。
根據(jù)上述瀏覽器廠商的說法,WebAssembly仍然會(huì)在JavaScript引擎上運(yùn)行,但是其會(huì)通過一種更加安全的格式,以便讓C以及C++(也可以支持其他語言)撰寫的代碼可以在瀏覽器端運(yùn)行。該技術(shù)可以使不同編程語言撰寫的Web應(yīng)用以接近本地程序的速度在任何瀏覽器上運(yùn)行。
依據(jù)該項(xiàng)目在GitHub上的常見問答板塊提供的信息顯示,這種字節(jié)碼在經(jīng)過本地解碼后,較JavaScript的解析速度快大約20倍,不但效率更高,而且更易于添加新的功能。
WebAssembly能夠惠及的應(yīng)用范圍廣泛,包括:遠(yuǎn)程桌面、VPN、加密、圖形與視頻編輯、端對端應(yīng)用、游戲、音樂串流及緩存、圖像識別等等。
Mozilla的工程師表示,通過適當(dāng)?shù)目蛻舳瞬寮问?,WebAssembly能夠很好的與當(dāng)前版本的瀏覽器協(xié)同工作。
據(jù)該常見問答板塊中的信息指出,WebAssembly不會(huì)取代JavaScript,而是作為一種有機(jī)補(bǔ)充,以便使多重語言編譯后的程序能夠在Web上運(yùn)行。同時(shí),JavaScript仍將保持其動(dòng)態(tài)語言的主導(dǎo)地位。在眾多場合,WebAssembly將與JavaScript協(xié)同運(yùn)行。
該項(xiàng)目仍處于早期階段,標(biāo)準(zhǔn)主體的草案也尚未被起草。
同時(shí),WebAssembly會(huì)增加程序的維護(hù)費(fèi)用,在安全和代碼大小方面也會(huì)造成新的問題。