Skip to content

Day 01 - Rust简介与学习路线

什么是Rust?

Rust是一门系统编程语言,由Mozilla资助开发,2006年Graydon Hoare创立,2010年正式发布。

核心理念:安全、并发、现代

为什么学习Rust?

优势说明
内存安全无GC,通过所有权系统保证无空指针/内存泄漏
高性能接近C/C++,零成本抽象
并发安全所有权模型天然防止数据竞争
生产力优秀的错误信息,cargo包管理器

学习曲线

Rust的学习曲线确实陡峭,主要难点:

1. 所有权系统(Ownership)

rust
fn main() {
    let s1 = String::from("hello");
    let s2 = s1; // s1移动到s2,不再有效
    
    // println!("{}", s1); // 错误!s1已失效
    println!("{}", s2); // 正确
}

2. 生命周期(Lifetime)

rust
fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
    if x.len() > y.len() { x } else { y }
}

3. 借用(Borrowing)

rust
fn main() {
    let mut s = String::from("hello");
    
    let r1 = &s;      // 不可变借用
    let r2 = &s;      // 可以多个不可变借用
    // let r3 = &mut s; // 错误!有不可变借用时不能可变借用
    
    println!("{} and {}", r1, r2);
}

学习路线

阶段主题预计天数
基础语法、所有权、借用Day 01-10
进阶trait、泛型、生命周期Day 11-20
实战异步、并发、Web开发Day 21-30

面试考点

问题:Rust相比Java/C++的优势?

答案:

  1. 内存安全:无需GC,无空指针/数据竞争
  2. 零成本抽象:高级语法不牺牲性能
  3. 并发安全:编译期防止数据竞争

适合场景:操作系统、嵌入式、WebAssembly、区块链、高性能组件。


📅 学习进度

Day主题状态
01Rust简介与学习路线
02变量与数据类型
.........
30复习与总结

本文为Rust 30天学习计划第1天内容

📚 导航

| Day 02 - 下一章 →

最后更新: