一、Rust环境搞起来
安装 Rust 的主要方式是通过 Rustup 这一工具,它既是一个 Rust 安装器又是一个版本管理工具。
使用环境:Windows 操作系统
安装包:Rust-x64安装包
如果是已安装Rust,可以输入以下命令进行更新为最新版本:rustup update
安装完成后,新打开一个PowerShell窗口查看是否安装成功:cargo --version
二、Rust基础命令了解下
安装 Rustup 时,会安装 Rust 构建工具和包管理器的最新稳定版,即 Cargo
- cargo build 用于构建项目
- cargo run 用于运行项目
- cargo test 用于测试项目
- cargo doc 为项目构建文档
- cargo publish 可以将库发布到crates.io
目前只了解下,项目实际使用中,加深了解。
三、Rust程序员标准入门-hello-rust
1、新建并运行
搞一个rust的目录,新建一个项目hello-rust,此处使用PowerShell执行命令
cargo new hello-rust
了解下自动生成的一些文件,powershell下运行命令 Get-ChildItem -Recurse可以查看目录结构:
Cargo.toml为 Rust 的清单文件。其中包含了项目的元数据和依赖库。Cargo.lock[此处未出现,cargto build后生成]记录了本地所用依赖库的精确版本。src/main.rs编写代码的目录,也是程序的主入口。*.gitignore*初始化了一个新的 Git 存储库以及一个 .gitignore文件,cargo new 可以修改为不同的版本控制系统或者不使用版本控制系统--vcs, 可以运行cargo new --help查看可用选项。
查看下main.rs,可以看到已经自动生成了一段代码,powershell运行cat src/main.rs查看:
fn main() {
println!("Hello, world!");
}
既然已有代码,直接运行,执行cargo run
生成的可执行文件在hello-rust\target\debug目录下,可以执行.\target\debug\hello-rust.exe
2、开发模式、发布模式了解下
发布模式适用于最终部署,而开发模式适用于日常开发和调试。你可以根据需要随时在这两种模式之间切换。
发布模式:
- 构建项目,可以使用以下命令:
cargo build --release - 运行项目,可以使用:
cargo run --release
这将在 target/release 目录中生成优化过的可执行文件,并在发布模式下运行项目。
开发模式:
- 构建项目,可以使用以下命令:
cargo build - 运行项目,可以使用:
cargo run
这将在 target/debug 目录中生成可执行文件,并在开发模式下运行项目。
切换模式: 如果你之前在发布模式下构建项目,但现在希望切换回开发模式,可以使用以下命令:
- 构建项目,可以使用以下命令:cargo build --profile dev
- 运行项目,可以使用:cargo run --profile dev
这将使用 --profile dev 选项切换到开发模式。
再来一个Rust程序
主要用来熟悉Rust如何使用第三方库,Rust可以在crates.io上找到丰富的类库。Rust中将包称作“crates”。
参照rust官网,玩下ferris_says::say
rust添加依赖库还不能像golang自动添加,需要在Cargo.toml中手动添加。
[package]
name = "hello-rust"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
ferris-says = "0.3.1"
然后修改src/main.rs:
use ferris_says::say;
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, width, &mut writer).unwrap();
}
运行:cargo build
运行:
cargo run
到此为止,下回分解。