Welcome to the Piscine Rust repository! This project is a comprehensive learning journey through the fundamentals and advanced concepts of the Rust programming language. The term "Piscine" (French for "swimming pool") is inspired by immersive bootcamp-style learning, where the goal is to dive deep and learn by doing.
This repository documents my hands-on exploration of Rust, covering topics such as:
- Rust Basics: Variables, data types, functions, control flow, and ownership.
- Memory Safety: Understanding Rust’s unique ownership, borrowing, and lifetimes to write safe and efficient code without a garbage collector.
- Structs & Enums: Creating and using custom data structures to model complex data.
- Pattern Matching: Leveraging
match,if let, and pattern destructuring for expressive and safe code. - Error Handling: Handling recoverable and unrecoverable errors with
Result,Option, and panic mechanisms. - Modules & Packages: Organizing code using modules, crates, and packages for scalability and maintainability.
- Collections & Iterators: Working with vectors, hash maps, strings, and iterators for effective data manipulation.
- Concurrency: Exploring Rust’s fearless concurrency using threads, channels, and the
async/awaitparadigm. - Testing: Writing unit tests and integration tests to ensure code reliability.
- Cargo: Using Rust's package manager for building, running, and managing dependencies.
Rust is a modern systems programming language focused on safety, speed, and concurrency. Through this Piscine, I aim to:
- Build a solid foundation in Rust’s unique programming concepts.
- Develop robust and efficient software.
- Prepare for real-world Rust projects and contributions to open source.
Happy coding and enjoy the Rust journey!