Introduction to Rust Programming and Core Concepts
Ends soon! Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Introduction to Rust Programming and Core Concepts
This course is part of Rust Programming Masterclass from Beginner to Expert Specialization
2,277 already enrolled
Included with
Learn more
Ask Coursera
20 reviews
Recommended experience
20 reviews
Recommended experience
What you'll learn
Apply Rust's ownership model for memory safety.
Analyze control structures to manage program flow.
Create advanced Rust applications using lifetimes, closures, and iterators.
Skills you'll gain
Tools you'll learn
Details to know
8 assignments
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- 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 7 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. Begin your journey into Rust programming with this all-encompassing course designed for developers looking to grasp the power and efficiency of Rust. Start with the essentials, including setting up your development environment and running your first program. As you progress, delve into basic programming constructs such as variables, data types, and functions, building a strong foundation for more complex concepts. The heart of Rust lies in its unique ownership model, which ensures memory safety and concurrency. This course provides a thorough exploration of ownership, including heap and stack memory management, and the intricacies of mutable and immutable references. You'll gain a deep understanding of how Rust handles memory, helping you write robust and efficient code. As you advance, the course introduces control structures, allowing you to write more flexible and powerful programs. Learn through hands-on projects, like implementing a stack, which reinforce the theoretical knowledge with practical application. Finally, tackle advanced topics like lifetimes, closures, and iterators, rounding out your expertise in Rust and preparing you for real-world programming challenges. This course is ideal for developers with basic programming knowledge who want to learn Rust. No prior Rust experience is required, but familiarity with programming concepts will be beneficial.
In this module, we will get acquainted with Rust programming and cover the course learning objectives. You will learn how to install Rust and VS Code, set up a development environment, and run your first Rust program to understand the basics.
What's included
3 videos2 readings
3 videosβ’Total 20 minutes
- Introduction to the Specializationβ’3 minutes
- Installing Rust and VS Code Editorβ’10 minutes
- Running and Compiling Your First Programβ’8 minutes
2 readingsβ’Total 20 minutes
- Introduction to the Course 'Introduction to Rust Programming and Core Concepts'β’10 minutes
- Full Specialization Resourcesβ’10 minutes
In this module, we will delve into basic programming concepts in Rust. You will learn about program outputs, comments, variables, and different data types including strings, tuples, arrays, and vectors, along with functions and inputs.
What's included
7 videos1 assignment
7 videosβ’Total 92 minutes
- Program Outputs and Commentsβ’13 minutes
- Variables and Scalar Data Typesβ’15 minutes
- More on Variables - Shadowing, Constantsβ’14 minutes
- Compound Data Types - Stringsβ’11 minutes
- Compound Data Types - Tuples, Arraysβ’14 minutes
- Compound Data Types - Vectorsβ’7 minutes
- Functions and Inputsβ’18 minutes
1 assignmentβ’Total 15 minutes
- Basic Programming - Assessmentβ’15 minutes
In this module, we will explore the core concept of ownership in Rust programming. You will learn about primitive and non-primitive types, memory management with heap and stack, and ownership rules in the context of functions and references.
What's included
5 videos1 assignment
5 videosβ’Total 60 minutes
- Ownership, Primitive, and Non-Primitive Typesβ’13 minutes
- Application Memory - Heap and Stackβ’13 minutes
- Ownership and References in Functionsβ’16 minutes
- Mutable and Immutable Referencesβ’13 minutes
- Dereferencingβ’5 minutes
1 assignmentβ’Total 15 minutes
- Ownership - The Heart of Rust Programming - Assessmentβ’15 minutes
In this module, we will cover control structures in Rust. You will learn to implement conditional statements, various loop types, and use break and continue statements to manage the flow of your programs efficiently.
What's included
6 videos1 assignment
6 videosβ’Total 60 minutes
- Conditional If and Its Variantsβ’13 minutes
- If Let and Nested Ifβ’8 minutes
- Match Statementβ’9 minutes
- While and Simple Loopsβ’10 minutes
- For Loops and Their Variantsβ’8 minutes
- Break and Continueβ’12 minutes
1 assignmentβ’Total 15 minutes
- Control Structures - Assessmentβ’15 minutes
In this module, we will undertake a hands-on project to implement a stack data structure. You will learn to reverse strings and evaluate expressions using stacks, including converting infix to postfix notation and evaluating postfix expressions.
What's included
7 videos1 assignment
7 videosβ’Total 75 minutes
- Implementing Stackβ’15 minutes
- String Reversal Using Stacksβ’6 minutes
- Expression Evaluation (Infix to Postfix Illustration)β’14 minutes
- Expression Evaluation (Postfix Evaluation)β’8 minutes
- Expression Evaluation - Part 1β’11 minutes
- Expression Evaluation - Part 2β’13 minutes
- Implementing Postfix Evaluationβ’8 minutes
1 assignmentβ’Total 15 minutes
- Project: Stack Implementation - Assessmentβ’15 minutes
In this module, we will explore advanced Rust features such as structures, traits, generics, and enums. You will learn to construct and implement these features, including option and result enums, and use hash maps for data storage.
What's included
8 videos1 assignment
8 videosβ’Total 85 minutes
- Structures Basicsβ’14 minutes
- Traits and Default Implementationsβ’13 minutes
- Functions within a Traitβ’5 minutes
- Enumsβ’14 minutes
- Genericsβ’12 minutes
- Option Enumβ’9 minutes
- Result Enumβ’6 minutes
- Hash Mapsβ’12 minutes
1 assignmentβ’Total 15 minutes
- Structures, Traits, Generics, Enums - Assessmentβ’15 minutes
In this module, we will delve into advanced Rust programming concepts including lifetimes, closures, and iterators. You will learn to manage memory with lifetimes, write concise code with closures, and use iterators to process data efficiently.
What's included
8 videos1 reading3 assignments
8 videosβ’Total 74 minutes
- Lifetimes - Part 1β’11 minutes
- Lifetimes - Part 2β’13 minutes
- Eliding Lifetimesβ’4 minutes
- Closures - Part 1β’11 minutes
- Closures - Part 2β’9 minutes
- Function Typesβ’7 minutes
- Iterators - Part 1β’11 minutes
- Iterators - Part 2β’9 minutes
1 readingβ’Total 10 minutes
- Conclusion to the Course 'Introduction to Rust Programming and Core Concepts'β’10 minutes
3 assignmentsβ’Total 90 minutes
- Full Course Practice Assessmentβ’15 minutes
- Iterators, Lifetimes, and Closures - Assessmentβ’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
Offered by
Explore more from Software Development
- Status: Free Trial
Course
- Status: Free Trial
Specialization
- Status: Free Trial
Why people choose Coursera for their career
Learner reviews
- 5 stars
45%
- 4 stars
20%
- 3 stars
5%
- 2 stars
20%
- 1 star
10%
Showing 3 of 20
Reviewed on Dec 14, 2024
The course coverage is very good. Wish the course has programming assignments along with multiple choice questions.
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.
More questions
Financial aid available,
