Memory safety without garbage collection — master Ownership, Borrowing, Lifetimes, and Traits.
Master Rust: the Ownership model, mutable and immutable borrowing (&, &mut), lifetimes ('a), Pattern Matching, Enums with data (Option, Result), Traits, Cargo package management, and fearlessly concurrent systems programming.
Why Rust, Cargo package manager (cargo build, cargo test), and main.rs.
Immutable by default (let), explicit mutability (let mut), constants, and variable shadowing.
The 3 Ownership rules, stack vs heap data, and the drop function.
The Borrow Checker, immutable borrows (&T), mutable borrows (&mut T), and data race prevention.
String slices (&str), array slices (&[T]), and contiguous view references.
Classic structs, tuple structs, impl blocks, and associated functions (Self::new).
Enums with payload data, the Option<T> type (no nulls), and match expressions.
Recoverable errors with Result<T, E>, unrecoverable panic!, and the '?' question mark operator.
Defining traits, implementing traits for types, trait bounds (impl Trait), and derive macros.
Lifetime annotations, the borrow checker's lifetime validation, and 'static lifetime.
Box<T>, Arc<T>, Mutex<T>, std::thread::spawn, and message-passing channels (mpsc).