当前位置: 首页 > news >正文

第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:个人简历

创建一个结构化的个人简历程序,包含:

  • 个人信息(姓名、年龄、联系方式)
  • 教育背景
  • 技能列表
  • 项目经验

知识点总结

  1. Rust特点:内存安全、并发安全、高性能
  2. 开发环境:rustup、cargo、rustc
  3. 项目结构:Cargo.toml配置文件、src/main.rs主程序
  4. 基本语法:函数、变量、数据类型、println!宏
  5. 编译运行:cargo build、cargo run、cargo check

扩展阅读

  • Rust官方文档
  • Rust程序设计语言
  • Rust by Example

下节课预告

第2课:Rust数据类型详解

  • 复合类型(数组、元组、结构体)
  • 枚举类型
  • 所有权系统基础
  • 引用和借用
http://www.dtcms.com/a/340412.html

相关文章:

  • Rust系统编程:从入门到实战的蜕变之旅
  • MySQL 数据与表结构导出 Excel 技术文档
  • 基础笔记8.20
  • Spring Cloud Gateway 负载均衡全面指南
  • 甘特图-项目可视化引擎|Highcharts.js 模块特征
  • Linux I/O 多路复用实战:Select/Poll 编程指南
  • Java主流框架全解析:从企业级开发到云原生
  • 通过自动化本地计算磁盘与块存储卷加密保护数据安全
  • 819 机器学习-决策树2
  • 学习threejs,打造宇宙星云背景
  • 芯科科技即将重磅亮相IOTE 2025深圳物联网展,以全面的无线技术及生态覆盖赋能万物智联
  • CentOS 系统 Java 开发测试环境搭建手册
  • CentOS 7.6安装崖山23.4.1.102企业版踩坑实战记录(单机)
  • Git 新手完全指南(二):在vscode中使用git
  • Linux 文本处理与 Shell 编程笔记:正则表达式、sed、awk 与变量脚本
  • CentOS 7/8 搭建 Samba 文件共享服务并与Windows无缝集成
  • centos配置ip地址不生效
  • 关于多个el-input的自动聚焦,每输入完一个el-input,自动聚焦到下一个
  • 基于SpringBoot的校园跳蚤市场二手交易管理系统【2026最新】
  • 如何删除三星手机上的所有内容(5 种解决方案)
  • 微美全息(NASDAQ:WIMI):以区块链+云计算混合架构,引领数据交易营销科技新潮流
  • 2026 济南淀粉深加工展览会亮点:玉米科技与未来产业发展
  • Vue3 element ui 给表格的列设置背景颜色
  • vue3源码reactivity响应式之数组代理的方法
  • 解决前端项目启动时找不到esm文件的问题
  • 微算法科技(NASDAQ: MLGO)引入高级区块链DSR算法:重塑区块链网络安全新范式
  • AI时代SEO关键词优化新策略
  • 设计模式1-单例模式
  • 梯度提升决策树(GBDT):从原理到实战,掌握结构化数据建模的核心利器
  • Python入门第13课:数据可视化入门,用Matplotlib绘制你的第一张图表