课程结构

本页面适用于课程教师。

Rust 基础知识

The first four days make up Rust Fundamentals. The days are fast paced and we cover a lot of ground!

Course schedule:

深入探究

In addition to the 4-day class on Rust Fundamentals, we cover some more specialized topics:

Android 中的 Rust

深入探究 Android课程为期半天,旨在介绍如何使用 Rust 进行 Android 平台开发。其中包括与 C、C++ 和 Java 的互操作性。

你将需要签出 AOSP。在同一机器上签出课程库, 然后将 src/android/ 目录移至所签出的 AOSP 的根目录。这将确保 Android 构建系统能检测到 src/android/ 中的 Android.bp 文件。

确保 adb sync 适用于你的模拟器或实际设备, 并使用 src/android/build_all.sh 预构建所有 Android 示例。请阅读脚本, 查看它所运行的命令,并确保这些命令能在你手动运行时正确执行。

Rust in Chromium

The Rust in Chromium deep dive is a half-day course on using Rust as part of the Chromium browser. It includes using Rust in Chromium’s gn build system, bringing in third-party libraries (“crates”) and C++ interoperability.

您需要具备构建 Chromium 的能力。为了提高速度,[建议使用] 调试组件 build (../chromium/setup.md),但任何类型的 build 均可使用。请确保可以运行您所构建的 Chromium 浏览器。

裸金属 Rust

深入探究裸金属 Rust课程为期一天,旨在介绍如何使用 Rust 进行裸金属(嵌入式)开发。其中涵盖了微控制器和应用处理器。

对于微控制器部分,你需要提前购买 BBC micro:bit 第 2 版开发板。每个人都需要安装多个软件包, 具体如欢迎页面中所述。

Rust 中的并发

深入探究并发课程为期一天,旨在介绍传统并发和 async/await 并发。

你需要设置一个新 crate,下载所需的依赖项, 做好课前准备。然后,你可以将示例复制/粘贴到 src/main.rs 中, 以便对以下代码进行实验:

cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run

课程形式

本课程的互动性非常强, 建议你以问题驱动探索 Rust!