第1课_Rust基础入门
第1课:Rust基础入门
课程目标
- 了解Rust语言的特点和优势
- 搭建Rust开发环境
- 编写并运行第一个Rust程序
- 理解Rust的基本语法结构
课程大纲
1. Rust语言简介 (20分钟)
1.1 什么是Rust?
- Rust是由Mozilla开发的系统级编程语言
- 专注于内存安全、并发性和性能
- 零成本抽象,无垃圾回收
- 编译时内存安全检查
1.2 Rust的优势
- 内存安全:编译时防止空指针、悬垂指针、数据竞争
- 并发安全:编译时防止数据竞争
- 性能:接近C/C++的性能
- 现代化:包管理器、测试框架、文档生成器
1.3 Rust的应用领域
- 系统编程
- WebAssembly
- 嵌入式开发
- 网络服务
- 游戏开发
2. 环境搭建 (15分钟)
2.1 安装Rust
# Windows (使用rustup-init.exe)
# 下载并运行 https://rustup.rs/# 验证安装
rustc --version
cargo --version
2.2 开发工具推荐
- VS Code + rust-analyzer扩展
- IntelliJ IDEA + Rust插件
- CLion + Rust插件
2.3 配置开发环境
# 更新Rust
rustup update# 查看已安装的工具链
rustup toolchain list
3. 第一个Rust程序 (25分钟)
3.1 使用cargo创建项目
# 创建新项目
cargo new hello_rust
cd hello_rust# 项目结构
hello_rust/
├── Cargo.toml
└── src/└── main.rs
3.2 理解Cargo.toml
[package]
name = "hello_rust"
version = "0.1.0"
edition = "2021"[dependencies]
3.3 第一个程序:Hello World
fn main() {println!("Hello, Rust!");
}
3.4 编译和运行
# 编译
cargo build# 运行
cargo run# 检查代码(不编译)
cargo check
4. Rust基本语法 (20分钟)
4.1 函数定义
fn greet(name: &str) -> String {format!("Hello, {}!", name)
}
4.2 变量和常量
// 变量(默认不可变)
let x = 5;
let mut y = 10; // 可变变量// 常量
const MAX_POINTS: u32 = 100_000;
4.3 基本数据类型
// 整数
let a: i32 = 42;
let b: u32 = 42;// 浮点数
let c: f64 = 3.14;// 布尔值
let d: bool = true;// 字符
let e: char = 'A';// 字符串
let f: &str = "Hello";
实践练习
练习1:创建个人介绍程序
创建一个程序,输出您的姓名、年龄和爱好。
fn main() {let name = "张三";let age = 25;let hobby = "编程";println!("姓名: {}", name);println!("年龄: {}", age);println!("爱好: {}", hobby);
}
练习2:计算器程序
创建一个简单的计算器,计算两个数的和、差、积、商。
fn main() {let a = 10;let b = 3;println!("{} + {} = {}", a, b, a + b);println!("{} - {} = {}", a, b, a - b);println!("{} * {} = {}", a, b, a * b);println!("{} / {} = {}", a, b, a / b);println!("{} % {} = {}", a, b, a % b);
}
课后作业
作业1:温度转换器
编写一个程序,将摄氏温度转换为华氏温度。
公式:F = C × 9/5 + 32
作业2:个人简历
创建一个结构化的个人简历程序,包含:
- 个人信息(姓名、年龄、联系方式)
- 教育背景
- 技能列表
- 项目经验
知识点总结
- Rust特点:内存安全、并发安全、高性能
- 开发环境:rustup、cargo、rustc
- 项目结构:Cargo.toml配置文件、src/main.rs主程序
- 基本语法:函数、变量、数据类型、println!宏
- 编译运行:cargo build、cargo run、cargo check
扩展阅读
- Rust官方文档
- Rust程序设计语言
- Rust by Example
下节课预告
第2课:Rust数据类型详解
- 复合类型(数组、元组、结构体)
- 枚举类型
- 所有权系统基础
- 引用和借用