DEV Community

Cover image for Exploring Rust🦀: A Journey Through Practical Examples
Abinash Sahoo
Abinash Sahoo

Posted on

Exploring Rust🦀: A Journey Through Practical Examples

Why Rust?

Rust is a general-purpose programming language that emphasizes safety, performance, and concurrency.

This is what Google said.

But from my point of view, Rust is a great programming language that teaches you how to code and how to build software in a practical and efficient way.

In one line, Rust makes you a great programmer.

Other than this, Rust is the only programming language that fits the criteria to be included in the Linux kernel after C.

Even C++ can not be.

There is a long list of reasons why I chose Rust. But this is not the topic for today.

My Approach

By the way, Rust is my first programming language.😉😉

I learned Rust from YouTube, official, docs and other tutorials.

They got me covered, but I am not that much confident in my skills.

So, I created this -> rust-practice. (do not forget to give it a ⭐)

A GitHub repo containing Rust exercises, from beginner to advanced level even the production-grade projects to build with Rust.

Why do you need another rust-practice exercise series as you already have other exercise series?

  • Tailored Learning Paths: Suitable for all levels, from beginners to advanced learners.
  • Variety of Exercises: Engage with 10 different types of exercises per topic.
  • Progress Tracking: Stay motivated with completion percentages after each exercise.

Structure

  • Basic Rust (10%)
    • (variables, mutability, Data types, Control flow, Functions, Ownership & borrowing)
  • Intermediate Rust (20%)
    • (Structs, Enums, Vectors, Hashmap, Error Handling, Traits, Iterators, Closures, Modules & Crates)
  • Advanced Rust(40%)
    • (Concurrency, Async programming, Smart Pointers(Box, Rc, RefCell), Macros, Unsafe Rust, Lifetimes, Generics)
  • CLI Projects (30%)
    • (Command-line tools, Advanced CLI tools, Package Building, Cross-platform development, Integration, Plugins & Systems)

My Progress

Every day, I will dedicate time to solving problems and sharing valuable information with you here.

Additionally, I will keep my GitHub repository updated with my progress, ensuring a consistent record of my learning journey.

The Series

In this series, I’ll be sharing all the important topics, solutions, and helpful findings I come across.

Please note, that this series will focus on the key points, not every single exercise. If you’re looking for detailed solutions or all exercises, you know where to find them. (my GitHub repo - link)

Final Thoughts

I hope you like my approach to learning and practising Rust.

If you have any suggestions or if you’re a senior developer with feedback to help me improve, feel free to drop a comment or send me a DM.

Have a great day.

Happy Rust Journey!🦀

Top comments (0)