BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

浏览器厂商开始默认支持WebAssembly格式

| 作者 David Iffland 关注 4 他的粉丝 ,译者 Rays 关注 3 他的粉丝 发布于 2017年3月14日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

各浏览器厂商在WebAssembly相关的工作上已经达成了一种“共识”,这使得各浏览器开始默认支持WebAssembly格式。

早在2016年11月,WebAssembly就已经进入“浏览器预览”(Browser Preview)阶段。在此阶段,主流浏览器都提供了一个具有WebAssembly开关标识的测试版本浏览器。随后的数月时间,各浏览器厂商需要在JavaScript API二进制格式上做改进,并就此取得一致意见。近期发布的公告对WebAssembly做了界定:

如果没有实现经验和明确用途,那么无法对WebAssembly API和二进制格式的设计做进一步的改进。从这个意义上讲,最初的设计工作已经完成。(各浏览器厂商)就此已达成了共识。

这一共识标志着“浏览器预览”阶段的结束,意味着各个浏览器可以默认打开对WebAssembly格式的支持。由此往后,将来的特性设计会确保向后兼容。

虽然这一最初实现是一个重要的里程碑,但是并不会立刻被开发人员大范围地采用。尽管未来潜力无限,WebAssembly当前的语言支持仅限于C和C++,以及对Rust的初期支持。WebAssembly也没有提供垃圾回收机制,因此C#和Java这样的语言并不能正常运行,除非将它们自身的运行时作为二进制的组成部分。但是以后添加垃圾回收已在讨论中。

此外,WebAssembly当前缺少与DOM交互等重要特性。Mozilla工程师Lin Clark 写道,虽然“期待了很多的特性”,但是这些特性需要“有一个制定规范的过程”。WebAssembly社区组已经提供了一个供W3C工作组讨论的未来特性列表,但是这些特性何时可用尚未有时间表。

Clark在一系列的帖子说明了WebAssembly会改进性能的原因所在,并指出引入WebAssembly将会是一个“转折点”,可导致无法预料的性能改进,并提供迎接新挑战的能力。

今后几年,各浏览器厂商会在改进JIT编译器性能的同时,继续改进JavaScrip和WebAssembly间的交互。

现在已可用的Firefox 52支持WebAssembly格式。定于2017年3月14日发布的Chrome 57也将默认启用WebAssembly格式。

查看英文原文: Browser Vendors Start Shipping WebAssembly by Default


感谢张卫滨对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

说句实话,这才是真正的前端革命性技术。 by 袁 斌

是革命性 技术!

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT