跳到主要内容

🦀 Rust 学习路线图

阅读顺序:

开始之前

危险
  • 学习 Rust 不存在捷径. 不存在 7 天速成教程.
  • 学习 Rust, 可能需要 1-3个月入门, 1-3年掌握, 3-5年熟练/精通.
    • 如果有 Python, Go, C, C++ 等语言基础, 学习 Rust 会快一些.
    • Rust 整体学习成本比 C++ 低, 收益大于 C++.
  • Rust 不适合作为第一门编程语言来学习.
    • 如果你是本科生(or 零基础学习者), 建议先学会 TypeScript / Python 再来.
  • 本教程, 后续会在语法点解释过程中, 大量类比/对比其他语言(Go/Python)的相似特性异同点, 以帮助大家快速理解 Rust .
  • ✅ rust 学习曲线比较陡峭, 很多人都反复入门(失败)而放弃. 无功而返.
    • 常见: 花1个月学, 3个月忘, 6个月归零... 再循环...
  • ✅ 如果有人告诉你 rust 很简单, 很容易学(7天学会). 请远离他.
    • 要么他是傻瓜(没学会), 要么他是骗子.
  • ✅ 本教程, 希望能降低 rust 初学者门槛, 让大家都能学会, 而不是半途而废.
  • ⛽️ 加油.

为什么要学 Rust?

提示
  • rust 有很多优点.
  • rust 已经成为国内外诸多大厂主力开发语言.
  • rust 社区生态丰富.
  • 学习 rust, 赚钱.

本教程存在意义?

目标人群:

适合:

  • ✅ Rust 初学者: 有一定其他编程语言(C/Java/Go/Python/JavaScript等)基础
  • ✅ 小目标: 零基础 -> 入门(1-3个月) -> 掌握 (1年)
    • 小目标, 是本教程核心, 力求: 初学者以最短路径快速入门 + 掌握 Rust.
  • ✅ 大目标: 掌握 -> 进阶(1-3年) -> 精通(3-5年) -> 专家
    • 教程持续迭代, 最终覆盖

不适合:

  • ❌ 已掌握 Rust 的开发者, 可以忽略本教程
  • ❌ 完全无编程基础, 建议先学习 Python/TypeScript/Dart 等之后, 再尝试学习 Rust

为什么不跟着 rust 官方教程学?

警告
  • 跟着官方能不能学会? 能.
  • 可以跟官方教程学会的, 没必要看本教程.
  • 本教程, 可以当作官方教程的先导篇(并不会浪费你时间).
  • 本教程和官方教程, 并不冲突, 不妨碍一起食用.
  • 先入门, 入门后, 你自然会知道后续路, 该怎么走.

怎么算入门?

  • ✅ 能理解 rust 的核心设计 & 优缺点
  • ✅ 能读懂 rust 社区项目 80% 的代码(目标很低, 够用)
  • ✅ 能上手写 rust 项目

Rust 快速学习方案

  • 学 rust 没有最短路径, 此教程, 只是尽可能让学习者少走弯路.

🚀 1. 快速掌握 rust 基础语法

提示
  • 先快速学习 rust 基础语法, 也就是对标 go, python 这类语言的语法集.
  • 不涉及 rust 进阶语法(初期跳过, 不求甚解.)
  • ✅ 此阶段, 耗时 1个月, 应该就可掌握.
  • ✅ 之后, 尝试写简单代码.

🚀 2. 练习简单代码:

提示
  • 通过 learn-by-example 来边写代码, 边学习.
  • ✅ 耗时 1-3 个月. (根据个人每天投入时间不等, 进度不同)

🚀 3. 学习 rust 进阶语法

提示
  • 承接上面2步骤, 此时需要深入了解 rust 进阶语法部分.
  • ✅ 所谓进阶, 就是 其他语言(go, python) 等, 不存在的 语法概念和设计.
  • ✅ 如: 生命周期, 宏 等

🚀 4. 项目实践

  • ✅ 通过写中等规模的项目, 来练习 rust 语法, 并快速掌握 rust 常用库.

🚀 5. 源码阅读+分析:

信息
  • rust std 标准库源码分析
  • rust 热门项目源码分析
  • 读源码, 是最快速的学习+提高手段. 适合任何水平段的程序员.
  • 源码之前, 了无秘密.