天天看点

大势所趋,WebAssembly 将统一浏览器编译格式

被 safari、app store 以及许多其他 os x、ios 和 linux 应用所广泛使用的开源 web 浏览器引擎 webkit ,如今有了完整的 webassembly 部署能力。就在上周,google chrome 也宣布将停止支持 pnacl ,拥抱 webassembly ,并表示因为考虑到跨浏览器支持乃是大势所趋,今后主要依靠 webassembly 构建原生代码。

webassembly 是用于 web 编译的新型便携式格式。它为高效而设计,针对体积和载入时间进行了优化。webassembly 的官方博客表示,该格式支持 c++ 等语言,它处理 c++ 代码的速度甚至可以接近原生速度。它建立在 asm.js 实现之上,提供了一个“自动备份,沙盒执行环境”,但等值的二进制格式更小,并且不再需要解析 javascript 。

chrome 和 firefox 浏览器目前完全支持 webassembly ,随着 webkit 的完整 webassembly 实现,safari 浏览器也将很快包含对 webassembly 的支持(safari 预览版本已支持)。这些主流浏览器的支持,也将带动建立围绕 webassembly 的生态系统,为新一代可在任何浏览器中快速运行的沉浸式网络应用奠定基础。