Advance your Rust programming journey with this in-depth course designed for developers seeking to master more complex concepts and real-world applications. Begin with an exploration of Rust modules and crates, learning how to create, manage, and publish packages. Dive into the essential Cargo tools for visualizing module hierarchies and streamline your code with techniques like re-exporting.
Progress to the critical topic of smart pointers, essential for advanced memory management in Rust. Understand the basics and applications of various smart pointers, such as Box, Rc, and RefCell. Build and refine data structures like singly and doubly linked lists, and learn to avoid common pitfalls like reference cycles that can lead to memory leaks. This section ensures you can handle sophisticated memory management challenges with confidence.
In the final segments, tackle advanced Rust programming techniques and real-world problem-solving scenarios. Master macros, testing, and effective code optimization methods. Apply your knowledge to build practical applications, from search result algorithms to data storage solutions using advanced data structures, like binary search trees. This hands-on approach solidifies your understanding and prepares you for professional Rust development.
This course is ideal for developers with a basic understanding of Rust who want to advance their skills. Fundamental knowledge of Rust programming concepts and syntax is recommended.
Overview
Syllabus
- Rust Modules and Crates
- In this module, we will dive into the Rust module system, exploring how to create and manage modules and crates. You will learn to use Cargo tools for visualizing module hierarchies, apply re-exporting with pub use, integrate external crates, and publish your own crate.
- Smart Pointers
- In this module, we will explore smart pointers in Rust, including their types and usage. You will learn about 'Box', 'Rc', and 'RefCell' smart pointers, their applications in singly and doubly linked lists, and techniques to prevent memory leaks due to reference cycles.
- Advance Techniques
- In this module, we will cover advanced Rust techniques, focusing on macros and their patterns, handling partial moves, and leveraging 'as_ref' for efficient code. We will also delve into advanced testing practices to help you write robust Rust programs.
- Real-Life Applications and Problem-Solving Using Rust
- In this module, we will tackle real-life applications and problem-solving using Rust. You'll build features like search results with 'HashMaps', highest stock price tracking with 'MaxStack', and item suggestions with 'HashSets'. Learn to apply advanced data structures like binary search trees and tries for efficient solutions.
- Deep Dive Into Traits
- In this module, we will explore Rust traits in-depth, focusing on trait bounds, associated types, and trait items. You will learn about the scope and application of traits, including marker and super traits, and gain insights into static versus dynamic dispatch for optimal code design.
Taught by
Packt - Course Instructors