- This is a list of summarized notes from reading The Book
- Additional helpful videos at The Rust Lang Book Video Series
- Introduction
- Installation
- Hello World
- Cargo
- Project - Guessing Game
- Practical intro to programming in Rust
- High-level concepts
- Common Programming Concepts
- Variables and Mutability
- Constants
- Shadowing
- Data Types
- Functions
- Comments
- Control Flow
- Loops
- Ownership System
- Rust's ownership system
- Safety mechanisms
- Structs and Methods
- Custom types
- Enums, Pattern Matching, and Control Flow
match
expressionif let
control flow expression
- Packages, Crates, and Modules
- Module system
- Privacy rules for organizing codes and APIs
- Common Collections Data Structures
- Standard Library
- Vectors
- Strings
- Hashmaps
- Error Handling
- Error handling philosophy
- Error handling techniques
- Generic, Traits, Lifetimes
- Code for multiple types
- Automated Tests
- Ensure program logic is correct
- Project - Command-Line
- Subset implementation of
grep
- Search texts within files
- Subset implementation of
- Iterators and Closures
- Features from functional programming
- Cargo and Crates.io
- Module system in depth
- Best practices for sharing libraries
- Smart Pointers
- Provided by standard library
- Traits for their functionality
- Concurrency and Threading
- Different models of concurrent programming
- Fearless threading in Rust
- Object-Oriented Idioms
- Idioms compared to OOP
- Patterns and Pattern Matching
- Reference for pattern matching
- Advanced Topics
- Unsafe Rust
- Macros
- Lifetimes
- Traits
- Types
- Functions
- Closures
- Project - Low-Level Multithreaded Web Server
- Apply it all
- A. Keywords
- B. Operators and Symbols
- C. Derivable Traits
- D. Useful Development Tools
- E. Rust Editions
- F. Book Translations
- G. How Rust is Made + Nightly Rust