为什么要用 Rust
- Rust 是一种令人兴奋的新编程语言,它可以让每个人编写可靠的且高效的软件
- 它可以用来替换 C/C++,Rust 和它们具有同样的性能,但是很多常见的 bug 在编译时就可以被消灭
- Rust 是一种通用的编程语言,但是它更善于以下场景
与其它语言比较
- C/C++ 性能非常好,但类型系统和内存都不太安全
- Java/C++:拥有GC,能保证内存安全,也有很多优秀的特性,但是性能不行
- Rust
- 安全
- 无需GC
- 易于维护、调试、代码安全高效
Rust 特别擅长的领域
- 高性能 Web Service
WebAssembly- 命令行工具
- 网络编程
- 嵌入式设备
- 系统编程
Rust 与 Firefox
- Rust 最初是 Mozilla 公司的一个研究性项目,Firefox 是 Rust 产品应用的一个重要的例子
- Mozilla 一直以来都在用 Rust 创建一个名为 Servo 的实验性浏览器引擎,其中所有的内容都是并行执行
- 目前 Servo 的部分功能已经被集成到 Firefox 里面了
- Firefox 原来是量子版就包含了 Servo 的 CSS 渲染引擎
- Rust 使得 Firefox 在这方面得到了巨大的性能改进
Rust 的用户和案例
- Google:新操作系统
Fuschia,其中 Rust 代码量大约占 30% - Amazon:基于 Linux 开发的直接可以在裸机、虚拟机上运行容器的操作系统
- System76:纯 Rust 开发了下一代安全操作系统 Redox
- 蚂蚁金服:库操作系统
Occlum - 斯坦福和密歇根大学:嵌入式实时操作系统,应用于 Google 的加密产品
- 微软:正使用 Rust 重写 windows 系统中的一些低级组件
- 微软:WinRT/Rust 项目
Rust 的优点
- 性能
- 安全性
- 无所畏惧的并发
Rust 的缺点
- “难学”
注意
Rust 有很多独有的概念,它们和现在大多数主流语言都不同
所以学习 Rust 必须从基础概念一步步学,否则会懵