Rust 语言是一种高效、可靠的通用高级语言。其高效不仅限于开发效率,它的执行效率也是令人称赞的,是一种少有的兼顾开发效率和执行效率的语言。
官方对Rust是这么评价的。对于现在网络来说,Rust 被广泛了解主要是由于两件事。一是安全性,Rust 语言因其并发安全性而深受众多开发者的喜爱,曾在多个榜单上获评最受欢迎编程语言。一是 Linux 内核将引入 Rust 。但是不管怎么说,Rust 能够流行,和它本身是否优秀是脱不开干系的。
本系列文章旨在通过理论和实践的结合,让读者更快的、更高效的学习 Rust 并解决学习过程中所遇到的问题。本系列文章还随布置各种学习的小案例作为作业,让读者更深入的学习和理解 Rust 的相关概念。最后会带领读者实战开发几个项目,让读者上手 Rust 开发。本篇文章最主要的两个目的就是为了说明你为什么要学习 Rust 和搭建 Rust 的开发环境。
Rust 语言由 Mozilla 开发,最早发布于 2014 年 9 月。Rust 的编译器是在 MIT License 和 Apache License 2.0 双重协议声明下的免费开源软件。
当前编译器版本号:1.62.0
这也就是为什么选择 Rust 的原因所在。在 Rust 官网这么写着 Rust 的优点:
Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。
Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。
Rust 拥有出色的文档、友好的编译器和清晰的错误提示信息, 还集成了一流的工具 —— 包管理器和构建工具, 智能地自动补全和类型检验的多编辑器支持, 以及自动格式化代码等等。
Rust 每一个版本都有一个核心主题或重点。将 1.0 视为“Rust 2015”,现在
短短几年时间,Rust官方以及对Rust进行了全年的改进,并且明确了Rust的主要方向。此外,更是创建了连接并授权 Rust 的全球社区。
Rust 语言可以用于开发:
Rust 编译器可以直接生成目标可执行程序,不需要任何解释程序。相比较传统的命令行开发,使用 Rust 强大的生态系统快速实现命令行工具。Rust 可助您放心维护,轻松分发应用程序。Rust拥有以下特点:
除此以外,Rust 还有优秀的错误处理
,能够当场 捕获错误。Rust 还能让您灵活地组织代码
。从一个文件开始,当您需要更多功能时,有信心重构应用程序而不会破坏任何内容。
以上内容将在随后的开发中非常明显的体现出来,如果你跟着本系列文章一起学习 Rust ,相信你很快就会了解到以上特点。
Rust 可以被编译成 WebAssembly,WebAssembly 是一种 JavaScript 的高效替代品。使用 Rust 来逐个增强您的 JavaScript 模块。发布到 npm,使用 webpack 打包,即可感受到惊人的速度提升。
使用 Rust 做 Web 开发,他拥有以下特点:
.wasm
模块不含类似于垃圾回收器这样的额外成本。高级优化和 Tree Shaking 优化可移除无用代码。对于 JavaScript 来说,Rust 做的并不是取代,而是增强,是 JavaScript 的最佳搭档:
npm audit
之类的工具和 Greenkeeper 来维护它们。web-sys
之类的库为整个 Web 平台提供预打包的绑定。Rust 用极低的资源消耗做到安全高效,且具备很强的大规模并发处理能力,十分适合开发普通或极端的服务器程序。可预见的性能,极小的资源占用,坚如磐石的可靠性。Rust 极其适合网络服务。在网络方便的优点,是 Rust 广泛被了解的原因之一,他的特点如下:
Rust 同时具有JavaScript 一般的高效开发语法和 C 语言的执行效率,支持底层平台的开发。针对资源匮乏的设备?需要底层控制而又不失上层抽象的便利?Rust 包您满意!
Rust 开发嵌入式设备有以下六大优点是:
现在的 Rust 有着广泛的应用,庞大的生态系统,活跃的社区,以及大量的参考资料,Rust 现在不只是有前途
的编程语言,更是有可靠前途
的编程语言。
搭建 Rust 开发环境,并且编写一个小应用。
当前环境:
项目 | 值 |
---|---|
操作系统 | Windows 11 |
Rust版本 | 1.62.0 |
编程工具 | vscode |
如果你觉得安装较为麻烦,只想体验一下的话,可以进入演练场在线使用。
点击链接进入页面后,点击下载生成工具
,然后就和正常安装包一样安装即可。
由于笔者使用的是 Windows 系统,因此目前就在 Windows 上进行学习,如果你不是 Windows 可以从这里找到对应的安装方式。
安装 Rust 的主要方式是通过 Rustup 这一工具,它既是一个 Rust 安装器又是一个版本管理工具。如果你有兴趣,可以去官网下载,当然我这里也是提供了最新版的下载地址。
Rustup下载 |
---|
32位 64位 |
官方下载
打开官网后,选择适合你的操作系统的版本进行下载:
打开下载好的 rustup-init.exe
,界面如下所示:
按照提示,给出三个选项,分别是
1. 默认安装
2. 自定义安装
3. 取消安装
此时输入需要 1
默认安装,就会自动安装好 Rust。
在 cmd
中运行命令 cargo --version
,如果得到以下结果,而不是 命令未找到
的话就是安装成功了。
配置开发环境相当简单,只要安装以下插件即可。
shift + 鼠标右键
,选择 此处打开命令行
,运行以下命令:cargo new hello-rust
鼠标右键
,然后选择 使用vscode打开
如果没有问题,界面应该是下面的样子:此时,文件夹目录是这样的,Cargo
已经帮我们创建好默认项目了,还创建了个git的本地仓库,还有一些配置文件,以后会说到。你只要知道 src/main.rs
为编写应用代码的地方。
新建项目已经为我们创建好了默认的 Hello World 项目,我们直接在 vscode
的终端中运行 cargo run
命令,就可以看到系统输出了 Hello World。
Cargo.toml
文件是一个管理项目配置的文件,包括项目依赖等相关配置,我们在后面会详细介绍该文件,现在我们来添加一个依赖,
cargo build
终端就会有以下输出,可以看到 cargo 会自动为我们添加依赖,并且安装好依赖所依赖的依赖(直接绕口令)
接下来就在 src/main.rs
中写入以下内容
use ferris_says::say; // from the previous step
use std::io::{stdout, BufWriter};
fn main() {
let stdout = stdout();
let message = String::from("Hello fellow Rustaceans!");
let width = message.chars().count();
let mut writer = BufWriter::new(stdout.lock());
say(message.as_bytes(), width, &mut writer).unwrap();
}
然后在终端中再次执行
cargo run
就会看到以下结果
这个案例我们随后会进行更加细致的讲解,并且随着后面的学习,对其中的语法理解会更加的深刻。
通过本文,你应该已经了解了为什么需要学习 Rust ,并且实现了 Rust 的小案例。由于本文是开篇,就不布置学习的作业,请等待文章更新。