This README provides an overview of what is covered in each day's folder in this Rust learning workspace.
- Rust basics and first program
- Cargo usage and project structure
- Simple guessing game
- Control flow: if, while, for loops
- Functions and return values
- Practice with function definitions and usage
- Enums: definition and pattern matching
- Option type: safe handling of optional values
- Structs: data grouping and methods
- Traits: defining and implementing shared behavior
- Generics: reusable, type-safe abstractions
- Result type: error handling
- Advanced project: flight simulation with traits and generics
- Ownership: value movement, borrowing, and function interaction
- References and borrowing: mutable/immutable borrows, scope rules
- Slices: working with parts of collections
- Collections in Rust:
- Error Handling in Rust:
- Panic vs Result: Difference between panic (unrecoverable errors) and Result (recoverable errors).
- Recoverable Errors: Handling file I/O and other recoverable errors using Result and match.
- Unrecoverable Errors: Using panic! for critical errors and understanding backtraces.
- Lifetimes in Rust:
- Lifetime: Explains Rust's lifetime system, lifetime annotations, dangling references, elision rules,
'staticlifetime, and combining lifetimes with generics and trait bounds.
- Lifetime: Explains Rust's lifetime system, lifetime annotations, dangling references, elision rules,
Each folder contains code examples, exercises, and documentation for the day's topic. Start from Day 1 and progress through each folder to build your Rust skills step by step.
Happy Rust learning!