目前,前端领域使用Rust有两个方向,一是使用Rust来打造更高性能的前端工具,二是作为WASM的编程语言,编译成可以在浏览器当中跑的WASM模块。
1.高性能工具
Rust足够年轻,没有几十个版本的标准、有和npm一样现代的包管理器,更关键是不会内存泄露,这使得即便rust的历史不长,即便C++也能写Nodejs扩展,但前端领域仍然出现了大量的Rust写的高性能工具。
随着前端愈发复杂,我们必定会逐渐追求性能更好的工具链,也许过几年我们就会看到使用swc和Rome正式版的项目跑在生产环境当中了。
2.WASM
有了WASM之后,前端也在寻找一个最完美支持WASM的语言,目前来看,也很有可能是Rust。
对于WASM来说,带运行时的语言是不可接受的,因为带有运行时的语言,打包成WASM之后,不仅包含了我们自己写的业务代码,同时还有运行时的代码,这里面包含了GC等逻辑,这大大提高了包体积,并不利于用户体验,将带运行时的语言剔除之后,前端能选择的范围便不大了,C++、Rust里面,Rust的优势使得前端界更愿意选择Rust。
Rust的官方编译器支持将Rust代码编译成WASM代码,再加上wasm-pack这种开箱即用的工具,使得前端是可以很快的构建wasm模块的。
如果对前 端感兴趣的小伙伴,也可加入非凸,一起来交流学习Rust哦~