This page is for the course instructor.
The first three days make up Rust Fundaments. The days are fast paced and we cover a lot of ground:
- Day 1: Basic Rust, syntax, control flow, creating and consuming values.
- Day 2: Memory management, ownership, compound data types, and the standard library.
- Day 3: Generics, traits, error handling, testing, and unsafe Rust.
In addition to the 3-day class on Rust Fundamentals, we cover some more specialized topics:
The Rust in Android deep dive is a half-day course on using Rust for Android platform development. This includes interoperability with C, C++, and Java.
You will need an AOSP checkout. Make a checkout of the course
repository on the same machine and move the
src/android/ directory into
the root of your AOSP checkout. This will ensure that the Android build system
Android.bp files in
adb sync works with your emulator or real device and pre-build all
Android examples using
src/android/build_all.sh. Read the script to see the
commands it runs and make sure they work when you run them by hand.
The Bare-Metal Rust deep dive is a full day class on using Rust for bare-metal (embedded) development. Both microcontrollers and application processors are covered.
The Concurrency in Rust deep dive is a full day class on classical
as well as
You will need a fresh crate set up and the dependencies downloaded and ready to
go. You can then copy/paste the examples into
src/main.rs to experiment with
cargo init concurrency cd concurrency cargo add tokio --features full cargo run
The course is meant to be very interactive and we recommend letting the questions drive the exploration of Rust!