为什么要用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原来的量子版就包含了Serve的CSS渲染引擎
- Rust使得Firefox在这方面得到了巨大的性能改进
Rust 的用户和案例
- Google:新操作系统Fuschia,其中Rust代码量大约占30%
- Amazon: 基于Linux开发的直接可以在裸机、虚拟机上运行容器的操作系统
- System76: 纯Rust开发了下一代安全操作系统Redox
- 蚂蚁金服:库操作系统Occlum
- 斯坦福和密歇根大学:嵌入式实时操作系统,应用于Google的加密产品
- 微软: 正在使用Rust重写Windows系统中的一些低级组件
- 微软:WinRT/Rust项目
- Dropbox、Yelp、Coursera、LINE、Cloudflare、Atlassian、npm、Ceph、百度、华为、Sentry、Deno…
Rust 的优点
- 高性能
- 安全性
- 无所畏惧的并发
Rust 的缺点
- 学习曲线陡峭
【注意】
- Rust有很多独有的概念。它们和现在大多主流语言不同,所以学习Rust必须从基础概念一步一步学,否则会懵。
安装Rust
-
安装:https://www.rust-lang.org/
-
Linux or Mac:
- curl https://sh.rustup.rs -sSf | sh
-
Windows : 按官网指示操作
-
Windows Subsystem for Linux(WSL):
- curl –proto ‘=https’ –tlsv1.2 -sSf https://sh.rustup.rs | sh