Packt
Advanced Rust Programming and Real-World Applications
Packt

Advanced Rust Programming and Real-World Applications

Access provided by GNA University

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

Recommended experience

2 weeks 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

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

What you'll learn

  • Master memory management, ownership, and lifetimes in Rust to write efficient code.

  • Implement Rust's concurrency model using threads and async/await.

  • Optimize your Rust code through performance lints and benchmarking.

  • Build real-world applications such as web scraping and blockchain projects in Rust.

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

16 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

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 14 modules in this course

In this module, we will dive deep into advanced Rust programming techniques aimed at enhancing code efficiency. From struct initialization and function input management to string operations and the Builder pattern, this section equips you with practical strategies for writing optimized Rust code.

What's included

10 videos2 readings1 assignment1 plugin

In this module, we will explore the intricacies of concurrent programming in Rust. You will learn about thread creation and synchronization, communication via channels, state sharing, and advanced concepts like async/await, preparing you to handle real-world concurrent programming challenges.

What's included

12 videos1 assignment1 plugin

In this module, we will cover essential file and directory handling techniques in Rust. You'll learn the basics of file operations, directory functions, and how to use regular expressions to process text efficiently, making your applications more robust and flexible.

What's included

4 videos1 assignment1 plugin

In this module, we will delve into the complexities of sized and unsized types in Rust. You will gain a deeper understanding of how to handle types without a known size at compile time, leveraging Rust's unique type system for more flexible and powerful programming.

What's included

4 videos1 assignment1 plugin

In this module, we will explore Rust’s unique approach to error handling. You'll learn how to effectively use the Result and Option types to handle and propagate errors, implement custom error types, and adopt layered error handling strategies to build resilient applications.

What's included

8 videos1 assignment1 plugin

In this module, we will explore advanced concepts of Rust references. You’ll learn how to cast, assign, and destructure references to manage memory effectively, and how references are constrained in method chaining and pattern matching for safe and efficient code.

What's included

8 videos1 assignment1 plugin

In this module, we will dive into Rust’s coercion system, exploring automatic type conversions like deref, reference, and function item coercion. You'll also understand how coercion enables dynamic dispatch with trait objects and how it’s applied in generics for enhanced flexibility in your code.

What's included

9 videos1 assignment1 plugin

In this module, we will go beyond simple lifetime concepts and explore advanced topics such as lifetime bounds, subtyping, variance, and invariance. You'll deepen your understanding of Rust’s memory safety guarantees and learn how to manage lifetimes in more complex scenarios.

What's included

8 videos1 assignment1 plugin

In this module, we will explore Rust’s powerful trait system, focusing on the Orphan Rule, trait object limitations, and advanced concepts like operator overloading and sealed traits. This will enable you to write more flexible and efficient Rust code while managing complexity.

What's included

9 videos1 assignment1 plugin

In this module, you will learn how to downcast between trait objects and concrete types to enable more flexible code in Rust. You’ll also explore real-world use cases for downcasting and discover how to check types without downcasting using Rust’s TypeId.

What's included

4 videos1 assignment1 plugin

In this module, we will explore Rust’s Drop trait, focusing on how Rust handles resource cleanup when objects go out of scope. You'll learn about drop order, the impact of partial moves, and strategies to avoid drop operations when needed for efficient resource management.

What's included

7 videos1 assignment1 plugin

In this module, we will merge the theory and practical application of blockchain technology using Rust. Starting from the fundamental concepts of hashes and blocks, you'll move on to building and validating a blockchain, acquiring the skills to develop blockchain solutions.

What's included

4 videos1 assignment1 plugin

In this module, we will introduce you to web programming with Rust. You will learn how to handle HTTP protocols, manage requests and responses, and use threads to process multiple requests concurrently, enhancing the performance and responsiveness of your web applications.

What's included

3 videos1 assignment1 plugin

In this module, we will focus on enhancing the performance of Rust applications. You will learn how to use Criterion for setting up and analyzing benchmarks, as well as how to identify and resolve performance issues using lints. This knowledge will empower you to optimize your Rust code for better efficiency and speed.

What's included

2 videos1 reading3 assignments

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 - Course Instructors
Packt
966 Courses214,041 learners

Offered by

Packt

Why people choose Coursera for their career

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."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
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."
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."

Explore more from Computer Science

Coursera Plus

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy