引言:为什么Rust是2025年的选择
2025年,Rust继续稳获全球开发者的青睐。根据年度Stack Overflow调查,Rust已连续八年被评为最受喜爱的编程语言。其主要优势在于无需垃圾回收器即可实现内存安全,以及顶级性能,与C和C++相当。如果你熟悉Python,但想学习编写快速可靠的系统应用、WebAssembly甚至操作系统——Rust将是你理想的下一步。
本文将介绍2025年如何开始学习Rust:如何安装工具链、编写第一个程序以及理解关键概念。让我们开始吧!
1. 安装Rust并了解Cargo
你首先需要安装rustc编译器和Cargo包管理器。2025年,这一过程已简化到极致。
通过rustup安装
官方推荐的方法是使用rustup工具。打开终端并运行命令:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh该脚本将提供标准设置——只需按回车键。安装后,重启终端或运行:
source $HOME/.cargo/env验证一切正常:
rustc --versioncargo --version第一个程序:"Hello, world!"
让我们使用Cargo创建一个新项目:
cargo new hello_rustcd hello_rustCargo将创建目录结构。打开文件src/main.rs——它已经包含一个模板:
fn main() { println!("Hello, world!");}用一条命令构建并运行程序:
cargo run你将看到期盼的问候。恭喜,你已经编写了第一个Rust程序!
2. Rust语法基础:变量、类型和函数
Rust是一种强静态类型语言,但编译器通常能自行推断类型。让我们分析基本结构。
变量与不可变性
默认情况下,Rust中的所有变量都是不可变的。这是该语言确保安全性的关键特性之一。
fn main() { let x = 5; // 不可变变量 // x = 6; // 错误!无法更改 let mut y = 10; // 可变变量 (mut) y += 5; // 现在 y = 15 println!("x = {}, y = {}", x, y);}数据类型
Rust支持常见类型:整数(i32、u64)、浮点数(f64)、布尔值(bool)、字符(char)和字符串(String、&str)。
fn main() { let a: i32 = -42; // 有符号整数 let b: u8 = 255; // 无符号8位 let c: f64 = 3.1415; // 双精度 let is_rust_cool = true; // 布尔值 let letter = 'R'; // 字符(4字节,Unicode) let greeting = String::from("Hello, Rust!"); println!("{} {} {} {} {} {}", a, b, c, is_rust_cool, letter, greeting);}函数
函数使用fn关键字声明。返回类型在箭头->后指定。
fn add(x: i32, y: i32) -> i32 { x + y // 最后一个表达式即为返回值(不加分号)}
fn main() { let sum = add(10, 20); println!("10 + 20 = {}", sum);}3. 关键概念:所有权与借用
Rust中最复杂但也最重要的主题是所有权系统。这正是无需垃圾回收器即可保证内存安全的原因。