Rust介绍

官网对rust的介绍为一门赋予每个人构建可靠且高效软件能力的语言
Rust是一门系统编程语言。简单来说,系统编程语言是一种资源受限的编程,你需要对每个字节和每个CPU时钟周期精打细算,做到高效的完成任务。
常见的系统编程应用场景:

  • 操作系统
  • 各种设备驱动
  • 文件系统
  • 数据库
  • 嵌入式设备
  • 内存管理程序
  • 高级编程语言
  • 虚拟化及软件程序
  • 游戏
  • 等等…

为什么选择Rust

系统编程语言已经有C/CPP了,为什么我还要选择Rust?

C语言诞生于1972年,C++诞生于1979年,这至今41+年的时光中一直没有编程语言去挑战他们的地位。

由于时代原因,C和C++是两门过于相信程序员的编程语言,不会去检查程序员出错的代码。

Rust的第一个正式版本发布于2015年,融合了现代编程语言的优秀设计,解决了传统系统编程语言的痛点问题。产生了高性能可靠性生产力三个优秀特点。

最值得一提的是可靠性,Rust的设计使得你可以在编译器解决各种错误,而不是运行时。同时他的这种设计也让多核时代的多线程编写变得更加简单。
又有谁没被segmentation fault折磨过呢?

享受编程

一旦你学会了rust,你就会享受到面向编译编译器开发带来的好处(虽然我个人现在还在痛苦当中)。感受前期多用脑子,开发不用脑子的特点了。

官方文档丰富

官方(社区)为Rust提供了许多优良的文档,比如the book,他们本身的优秀使得你可以从官网快速开始学习Rust。

Rust的缺陷之处

学习曲线陡峭

Rust与C-like语言较大的差异使得上手Rust变得困难。为了严格防止未定义行为,Rust又引入了所有权,生命周期等概念。这使得学习Rust的难度进一步提高。

编译时间长

为了保证可靠性,Rust需要在编译时进行大量的检查(编译器教你做事),这使得一个大的项目要花费更多的时间在编译上。更为遗憾的是这个缺点可能需要很久(甚至不可能)改善。

不过现在已经有多线程编译的出现以减少编译时间。

就算你不致力于使用Rust,也可以看一看Rust

Rust吸收了许多编程语言的优良设计,并解决了许多过去编程的痛点问题。就算你不使用Rust,去学一学Rust的哲学也可以帮助你成为更好的程序员。