欢迎来到 Comprehensive Rust 🦀
这是一门由 Android 团队开发的免费 Rust 课程。课程涵盖了 Rust 的全部内容,从基本语法到泛型和错误处理等高级主题。
如需查看课程的最新版本,请访问 https://google.github.io/comprehensive-rust/。如果您在其他地方阅读,请在那里查看更新。
The course is also available as a PDF.
本课程的目标是教会你使用 Rust。假设你对 Rust 一无所知,本课程可以:
- 帮助你全面理解 Rust 的语法和语言。
- 让你可以用 Rust 修改现有程序和编写新程序。
- 为你展示常见的 Rust 习惯用法。
我们将前四天的课程称为“Rust 基础”。
在此基础上,你可以选择深入研究一个或多个专门的主题:
- Android:为期半天的课程,介绍如何在 Android 平台开发中使用 Rust(AOSP)。课程内容包括与 C、C++ 和 Java 的互操作性。
- Chromium:为期半天的课程,介绍如何在基于 Chromium 的浏览器中使用 Rust。课程内容包括与 C++ 的互操作性以及如何在 Chromium 中加入第三方 crate。
- 裸机:为期一天的课程,介绍如何使用 Rust 进行裸机(嵌入式)开发。课程内容涵盖微控制器和应用处理器。
- 并发:为期一天的课程,介绍 Rust 中的并发性。我们将涵盖传统并发(使用线程和互斥锁进行抢占式调度)和 async/await 并发(使用 futures 进行协作式多任务处理)。
非目标
Rust 是一门庞大的语言,短短几天的课程无法覆盖其全部内容。本课程不包括以下内容:
- 学习如何开发宏:请参阅 Rust Book 的第 19.5 章 和 Rust by Examples 对应章节。
学习前提
本课程假设你已经具备编程知识。Rust 是一种静态类型语言,本课程有时会将其与 C 和 C++ 进行比较,以便更好地解释或对比 Rust 的设计。
如果你会使用 Python 或 JavaScript 等动态类型语言编程,那么你也能够很好地跟上进度。
这是演讲者备注(Speaker Notes)的示例。页面中使用它来为幻灯片添加备注信息,其内容包括讲师应涉及的要点,以及对课堂上可能出现的典型问题的回答。