Wasm 的主力,你觉得是谁?Go?Rust?

共 1695字,需浏览 4分钟

 ·

2022-06-30 16:35

出品 | OSC开源社区(ID:oschina2013)
最新的一份《The State of WebAssembly 2022》调查报告已出炉,“对于 WebAssembly 来说,这是相当不错的一年”。报告的一些重点内容包括:
  • Rust 的使用率和渴望度持续攀升

  • Python 的使用量有了很大的提升

  • JavaScript 已经成为一种可行的 WebAssembly 语言

  • Blazor 的使用量和渴望度也都大幅攀升

  • Wasmtime 是使用最广泛的运行时

  • WebAssembly 在无服务器、容器化和作为插件主机方面的使用大幅攀升

  • 受访者表示其已经在更频繁地使用 WebAssembly

  • Non-browser API 是 WebAssembly 最需要的

具体表现为,当被问及 “使用的语言,或者是否尝试过使用 WebAssembly 开发” 时,45% 的受访者表示经常或有时使用 Rust;在去年的这一调查中,Rust 名列榜首。报告指出,WebAssembly 和 Rust 确实有相当密切的关系,大多数 WebAssembly 运行时都是用 Rust 编写的,基于 wasm 的各种平台也是如此。它还拥有一些最好的工具,所以这个结果并不令人意外。
今年排在第二位的是 JavaScript,去年是 AssemblyScript。但去年的调查中并未提供 JavaScript 选项,并且也没有人补充表示正在使用。虽然 JavaScript 不能被编译成 WebAssembly,但有一个解决方法是:你可以不把 JS 编译成 Wasm,而是把 JavaScript 引擎编译成 WebAssembly,然后用它来执行你的代码。“这实际上比你想象的要实用得多。
67% 的受访者表示经常使用 WebAssembly,相较去年的 47% 有了很大的提升。
如上图所示,Rust 的使用量稳步攀升,但攀升者最猛的是 Blazor 和 Python;AssemblyScript 的使用量下降幅度最大。研究人员怀疑,是否存在有些受访者错误地将 AssemblyScript 识别成了 JavaScript?
意料之中的是,受访者表示他们最想用来进行 WebAssembly 开发的语言也是 Rust。与去年相比,Rust 的受欢迎程度略有上升,但最突出的还是 Blazor,Go 紧随其后。总的来说,Blazor 在 2022 年势头不错。
大多数人使用 WebAssembly 进行 Web 开发,其次是无服务。将今年的结果与去年的结果进行比较后发现:WebAssembly 在无服务器和容器化中的使用出现了上涨,但最大的增长是使用 WebAssembly 作为插件环境;WebAssembly 在游戏中的使用出现了下降。
受访者最感兴趣的特性分别是 Threads、Exceptions 和 Garbage Collection,最感兴趣的 WASI(WebAssembly System Interface)提案分别是 I/O types、Sockets、Filesystem 和 Native threads。且报告指出,Non-browser API 是 WebAssembly 在未来取得成功最需要的因素。“这进一步凸显了人们对 WASI 的兴趣和重要性。
更多详情可查看完整报告:https://blog.scottlogic.com/2022/06/20/state-of-wasm-2022.html


往期推荐


我是 polarisxu,北大硕士毕业,曾在 360 等知名互联网公司工作,10多年技术研发与架构经验!2012 年接触 Go 语言并创建了 Go 语言中文网!著有《Go语言编程之旅》、开源图书《Go语言标准库》等。


坚持输出技术(包括 Go、Rust 等技术)、职场心得和创业感悟!欢迎关注「polarisxu」一起成长!也欢迎加我微信好友交流:gopherstudio

浏览 39
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报