为什么使用 Rust 和 WebAssembly?

低水平控制与高水平的人体工程学

JavaScript Web应用程序很难保持可靠的性能。 JavaScript的动态类型系统和垃圾收集暂停没有帮助。 如果不小心偏离了JIT的理想路线,那么看似很小的代码更改可能会导致性能急剧下降。 Rust为程序员提供了低级别的控制和可靠的性能。 它没有困扰JavaScript的不确定性垃圾收集暂停。 程序员可以控制间接寻址、单态化和内存布局。

更小的 .wasm 体积

代码大小非常重要,因为 .wasm 必须通过网络下载。 Rust 缺少 runtime,支持较小的 .wasm 大小,因为它不像垃圾收集器那样包含额外的膨胀。 只需要承担实际使用的函数成本(按代码大小)。

不需要重写

不需要遗弃现在有的代码。 你可以把哪些性能比较敏感的 JavaScript 函数写成 Rust 函数,可以立刻得到优化。 同时,也可以到此为止。

与其他工具兼容

Rust 和 WebAssembly 与现有 JavaScript 工具集成。它支持 ECMAScript 模块,可以继续使用你喜欢的工具,比如 npm 和 Webpack。

基础设施

Rust 拥有开发者们所期待的现代化便利设施,例如:

  • 强大的软件包管理 cargo
  • 表达性(零成本)抽象,
  • 一个热情的社区!😊