VOOZH about

URL: https://www.coursera.org/learn/packt-intermediate-rust-programming-and-advanced-concepts-2ffa5

⇱ Intermediate Rust Programming and Advanced Concepts | Coursera


Intermediate Rust Programming and Advanced Concepts

Ends soon! Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Intermediate Rust Programming and Advanced Concepts

Included with

β€’

Learn more

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

1 week to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

1 week to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Implement various smart pointers for advanced memory management.

  • Apply macros and advanced testing techniques in Rust.

  • Analyze and solve real-world problems using advanced data structures and algorithms.

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

4 assignments

Taught in English

Build your subject-matter expertise

This course is part of the Rust Programming Masterclass from Beginner to Expert Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 5 modules in this course

Updated in May 2025.

This course now features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. 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.

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.

What's included

6 videos2 readings

6 videosβ€’Total 61 minutes
  • Rust Modules (Part 1)β€’6 minutes
  • Rust Modules (Part 2)β€’16 minutes
  • Cargo tools to Visualize Module Hierarchyβ€’8 minutes
  • Re-Exporting using Pub useβ€’7 minutes
  • Using External Cratesβ€’10 minutes
  • Publishing Your Crateβ€’12 minutes
2 readingsβ€’Total 20 minutes
  • Introduction to the Course 'Intermediate Rust Programming and Advanced Concepts 'β€’10 minutes
  • Full Specialization Resourcesβ€’10 minutes

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.

What's included

11 videos

11 videosβ€’Total 140 minutes
  • Basics of Smart Pointersβ€’15 minutes
  • Box Smart Pointers and When to Use Itβ€’14 minutes
  • Refining Cons List and Custom-Defined Smart Pointersβ€’19 minutes
  • Singly Link List (Part 1)β€’9 minutes
  • Singly Link List (Part 2)β€’13 minutes
  • Generics and Deref Coercion in Smart Pointersβ€’10 minutes
  • Rc Smart Pointerβ€’11 minutes
  • RefCell Smart Pointerβ€’10 minutes
  • Doubly Link List (Part 1)β€’10 minutes
  • Doubly Link List (Part 2)β€’12 minutes
  • Reference Cycles Creating Memory Leakageβ€’17 minutes

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.

What's included

10 videos1 assignment

10 videosβ€’Total 111 minutes
  • Macros Basicβ€’15 minutes
  • Capturing Typesβ€’14 minutes
  • Repeating Patternsβ€’12 minutes
  • Unit Type, Expression Versus Statements, and Partial Moveβ€’12 minutes
  • As_ref and Partial Move in Optionβ€’9 minutes
  • Take and Swap for Avoiding Allocationsβ€’8 minutes
  • Question Mark Operatorβ€’13 minutes
  • Testing Your Code (Part 1)β€’16 minutes
  • Testing Your Code (Part 2)β€’6 minutes
  • Testing Your Code (Part 3)β€’6 minutes
1 assignmentβ€’Total 15 minutes
  • Assessment 1β€’15 minutes

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.

What's included

14 videos

14 videosβ€’Total 145 minutes
  • Search Results Using Word Groupings with HashMaps and Nested Loopsβ€’10 minutes
  • Product Popularity Using HashMapsβ€’6 minutes
  • Highest Stock Price Using MaxStack and Structuresβ€’8 minutes
  • Finding an Employee with No Meeting Using Multidimensional Arraysβ€’10 minutes
  • Longest Non-Stop Working Employee Using HashSetsβ€’10 minutes
  • Items Suggestions Using HashSets and Vectorsβ€’8 minutes
  • Items in Ranges Using Binary Search Tree (Part 1)β€’9 minutes
  • Items in Ranges Using Binary Search Tree (Part 2)β€’10 minutes
  • Fetching Top Productsβ€’15 minutes
  • Effective Storage and Retrieval Using Trie Data Structureβ€’12 minutes
  • Most Recently Used Product Using Doubly Link List and HashMaps (Part 1)β€’10 minutes
  • Most Recently Used Product Using Doubly Link List and HashMaps (Part 2)β€’14 minutes
  • Displaying Participants in an Online Meeting (Part 1)β€’7 minutes
  • Displaying Participants in an Online Meeting (Part 2)β€’15 minutes

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.

What's included

6 videos1 reading3 assignments

6 videosβ€’Total 71 minutes
  • Trait Boundsβ€’5 minutes
  • Associated Typesβ€’7 minutes
  • Trait Itemsβ€’16 minutes
  • Scope of a Trait, Marker, and Super Traitβ€’19 minutes
  • Some Useful Traitsβ€’8 minutes
  • Static Versus Dynamic Dispatch (Trait Objects)β€’14 minutes
1 readingβ€’Total 10 minutes
  • Conclusion to the Course 'Intermediate Rust Programming and Advanced Concepts'β€’10 minutes
3 assignmentsβ€’Total 90 minutes
  • Full Course Practice Assessmentβ€’15 minutes
  • Assessment 2β€’15 minutes
  • Full Course Assessment β€’60 minutes

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructor

Packt
1,946 Coursesβ€’575,115 learners

Explore more from Software Development

Why people choose Coursera for their career

πŸ‘ Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
πŸ‘ Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
πŸ‘ Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
πŸ‘ Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions

Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.

If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.

Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.

If you complete the course successfully, your electronic Course Certificate will be added to your Accomplishments page - from there, you can print your Course Certificate or add it to your LinkedIn profile.

This course is currently available only to learners who have paid or received financial aid, when available.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,