Let's Get Rusty Learning Guide
Beginner
Basics
❱
Setup
Hello World
Comments
Variables
Data Types
Constants & Statics
Functions
Control Flow
Memory Safety
❱
Ownership
Borrowing
Slices
Strings
Custom Data Types
❱
Structs
Implementation Blocks
Tuple Structs
Enums
Matching
Option
Result
Vectors
Project Structure
❱
Project Structure Overview
Modules
External Dependencies
Publishing Your Package
Cargo Features
Cargo Workspaces
Testing
❱
Unit Tests
Integration Tests
Benchmark Tests
Documentation
Intermediate
Polymorphism
❱
Generics
Traits
Trait Bounds
Supertraits
Trait Objects
Deriving Traits
Orphan Rule
Advanced Memory Management
❱
Concrete Lifetimes
Generic Lifetimes
Lifetime Elision
Box Smart Pointer
Rc Smart Pointer
RefCell Smart Pointer
Deref Coercion
Error Handling
❱
Unrecoverable Errors
Recoverable Errors
Propagating Errors
Result and Option
Multiple Error Types
Advanced Error Handling
❱
Avoiding Unwrap
Custom Errors
thiserror
anyhow
error-stack
Functional Programming
❱
Closures
Function Pointers
Iterator Pattern
Iterator over Collections
Combinators
Advanced
Concurrency
❱
Intro to Concurrency
Creating Threads
Moving Values into Threads
Passing Messages between Threads
Sharing States between Threads
Send and Sync Traits
async/.await
Tokio Tasks
Tokio Streams
Macros
❱
Intro to Macros
Declarative Macros
Procedural Macros
Custom Derive
Attribute Like
Function Like
Unsafe Rust and FFI
❱
Intro to Unsafe Rust
Dereferencing Raw Pointers
Calling Unsafe Functions
Mutable Static Variables
Implementing Unsafe Traits
Inline Assembly
FFI C from Rust
FFI Rust from C
FFI Rust from Python
Further Learning
Masterclasses
❱
Rust Based Computer Science
Deep Dive into Strings in Rust
Building Microservices in Rust
Systems Programming in Rust
Projects
❱
CLI Project
API Project
Microservices Project
Light
Rust
Coal
Navy
Ayu
Let's Get Rusty
Comments
Exercises
(No exercises yet. Feel free to contribute
here
!)