如何评价 WebAssembly System Interface?

没有 System Interface 意味着以前的 wasm 无法独立完成除计算以外的其它功能,如网络IO,文件访问等,只能在浏览器中用来加速一些计算密集型任务或隐藏业务实现的细节,而且还需要带上一坨胶水代码。

更大的问题在于现在很多 wasm 的使用者是使用 C++, Rust之类的语言编译到wasm的,上游语言能提供底层调用能力,但是作为编译目标的wasm无法提供,只能通过和JavaScript交互, 依赖JavaScript来实现,使用体验非常差。

原文中写的很明白

Developers are starting to push WebAssembly beyond the browser, because it provides a fast, scalable, secure way to run the same code across all machines.

大意就是开发者社区已经不满足于 wasm 只能作为备胎,而是想跳出 JavaScript ,乃至Web开发的圈子, 尝试一些新的可能性。

有了wasi的加成, wasm已经成为了一个能够独立运行在OS上的跨平台语言,这就意味着理论上现存的绝大部分程序的功能都可以使用wasm来实现。

这个过程和 node.js 的诞生有惊人的相似,相比于node.js, wasm有自己的优势

  1. 用户基础:多种语言已经可以编译到wasm
  2. 更好的性能
  3. 更小的运行时(合理推断)
  4. 更安全(尚待观察)

在嵌入式设备场景, 以上优势非常明显

即使在 node.js 生态内, 目前的 native plugin 也主要是C++写的,wasm在这方面也可以成为一个有力的竞争者

“我自己是一名老程序员,辞职目前在做讲师,今年我整理了一份适合2019年学习的J a v a干货,从最基础的面向对象到各种框架都有整理,送给每一位初学和进阶中想学Ja va编程的小伙伴。"

加QQ君羊:69769,9179(招募中)

猜你喜欢

转载自blog.csdn.net/sdssdfh/article/details/89287415