Skip to content

phil71x/learn-rust-fork

 
 

Repository files navigation

Learn Rust by Doing: An Applied, Hands-On Roadmap

Welcome! This guide is designed to make you proficient in Rust through practical, project-based learning. Each topic includes hands-on exercises and real-world applications.

Learning Plan

  1. Setting Up Your Rust Development Environment

    • Install Rust, set up your editor, and run your first program.
  2. Hello, Cargo!

    • Use Cargo to create, build, and run projects. Explore project structure.
  3. Variables, Data Types, and Mutability

    • Practice with variables, constants, shadowing, and type inference.
  4. Control Flow in Action

    • Write programs using if, match, loops, and pattern matching.
  5. Functions and Modular Code

    • Build reusable functions and split code into modules.
  6. Ownership, Borrowing, and References

    • Experiment with Rust's memory safety model through small programs.
  7. Structs and Enums: Modeling Data

    • Design and use custom data types in practical mini-projects.
  8. Collections and Iterators

    • Manipulate vectors, strings, hash maps, and use iterators in real tasks.
  9. Error Handling: Result and Option

    • Handle errors and absence of values in file and user input operations.
  10. File I/O and the Filesystem

    • Read from and write to files, and explore directories.
  11. Testing Your Code

    • Write and run unit and integration tests for your projects.
  12. Building a Command-Line Tool

    • Create a useful CLI application from scratch.
  13. Using External Crates

    • Add dependencies, use popular crates, and publish your own.
  14. Concurrency: Threads and Channels

    • Write concurrent programs using threads and message passing.
  15. Networking: HTTP Client/Server

    • Build a simple web client or server to interact with the internet.
  16. Interacting with JSON and APIs

    • Parse JSON and call real-world APIs.
  17. Debugging and Profiling

    • Use Rust's debugging and profiling tools to improve your code.
  18. Capstone Project

    • Apply everything by building a complete, real-world application.

Each topic is hands-on and project-driven. By the end, you'll be able to build, test, and deploy robust Rust applications.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published