为什么是Rust和WebAssembly?

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

JavaScript网络应用程序很难达到并保持可靠的性能。JavaScript的动态类型系统和垃圾收集的暂停并没有帮助。看似很小的代码改动,如果你不小心偏离了JIT的快乐路径,就会导致性能的急剧下降。你不小心偏离了JIT的快乐路径。

Rust 为程序员提供了低级控制和可靠的性能。 它没有困扰 JavaScript 的非确定性垃圾收集暂停。 程序员可以控制间接、单态化和内存布局。

小的 .wasm 尺寸

代码大小非常重要,因为 .wasm 必须通过网络下载。 Rust 缺少运行时,支持较小的 .wasm 大小,因为没有像垃圾收集器那样包含额外的膨胀。 您只需为实际使用的功能付费(按代码大小)。

不需要 重写一切

不需要丢弃现有的代码库。 您可以首先将您对性能最敏感的 JavaScript 函数移植到 Rust,以获得直接的好处。 如果您愿意,你甚至可以到此为止。

与其程序可以很好的结合

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

您期待的便利设施

Rust 拥有开发人员所期望的现代设施,例如:

  • 强大的包管理 cargo,

  • 富有表现力(和零成本)的抽象,

  • 和一个热情的社区! 😊