前端快速学习Rust语言—认识Cargo工具

587 阅读2分钟

介绍

Rust的构建工具和包管理工具,例如:构建代码、下载依赖库,功能类似npm。Rust安装后自带Cargo, 可以执行 cargo -V 检查是否已经安装

创建项目

1、手动命令创建项目, cargo + new关键字 + 项目名称(多个单词下划线分割)

cargo new hello_cargo

2、提升创建成功

3、目录结构,如下图所示

目录结构说明:

image.png

Cargo.toml

TOML/toml-v1.0.0.md at 龙腾道-译 · LongTengDao/TOML

0.导言 · LongTengDao/TOML Wiki

TOML是 cargo的配置格式,在Rust中代码包称作 crate

构建项目

1、 手动命令构建项目,cargo build

仅负责生成可执行文件,需要手动运行代码

cargo build

2、 第一次执行成功,会增加target文件夹(可执行文件)和Cargo.lock(用过npm的同学作用应该都懂,~要不要这么熟悉呀)文件

3、第二次执行成功,不会有新文件增加

4、 手动运行

./target/debug/hellow_world

构建并运行项目

1、手动执行命令, cargo run

功能就是编译代码 + 执行结果

cargo run  

2、 执行 cargo run 前,已经执行过 cargo build命令的情况

3、执行 cargo run 前,未执行过 cargo build命令的情况,

4、未修改代码,再次执行 cargo run 的情况

5、修改源代码后,再次执行 cargo run 的情况

为什么2和4 两种情况下都没有 Compiling 的过程?

1、如果之前代码已经编译过 且 代码没有发生修改,那么就会之前运行编译的代码;

2、如果之前代码没有编译过 或者 代码有发生修改,那么就会先编译代码、再运行。

代码预检查

1、手动执行命令, cargo check

功能就是检查代码是否能通过编译

cargo check

2、执行结果,不产生任何文件(不会有编译的过程)

cargo check 在开发过程中可以多次使用,执行速度比 cargo build 的快且不会产生可执行文件。结论:用好 cargo check 可以提升开发效率

构建发布

发布代码前需要代码做优化,手动执行命令,cargo build --release

执行后,会增加 target/release 目录存放可执行文件。在编译代码时会进行优化,但是编译时长要更长一些。

cargo build --release

对比 cargo build 的不同使用场景:

-代码开发阶段: 使用 cargo build, 存放可执行代码目录 :target/debug

-代码发布阶段: 使用 cargo build --release, 存放可执行代码目录 : target/release

总结

Cargo 命令

cargo -V   // Cargo的安装版本

cargo new XX_XX    // Cargo创建项目命令

cargo build    // 开发阶段构建代码,不会自动运行代码

cargo run    // 编译代码 + 运行代码

cargo check   // 快速检查代码编译情况,不产生可执行文件

cargo build --release // 发布阶段构建代码,编译代码会进行优化,编译过程变长

复习思维导图

image.png