VOOZH about

URL: https://www.coursera.org/learn/rust-fundamentals

⇱ Rust Fundamentals | Coursera


Rust Fundamentals

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

Rust Fundamentals

This course is part of Rust Programming Specialization

22,484 already enrolled

Included with

β€’

Learn more

Gain insight into a topic and learn the fundamentals.
4.0

243 reviews

Beginner level

Recommended experience

Flexible schedule
4 weeks at 10 hours a week
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
4.0

243 reviews

Beginner level

Recommended experience

Flexible schedule
4 weeks at 10 hours a week
Learn at your own pace

What you'll learn

  • Apply Rust's core concepts like ownership, borrowing, and lifetimes to write efficient, reliable, and safe code.

  • Use Rust's advanced features like enums, structs, traits, and generics to build robust applications.

  • Develop, document, test and debug Rust projects using Cargo, Rust Analyzer, and other tools in the Rust ecosystem.

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

8 assignments

Taught in English
84%
Most learners liked this course

Build your subject-matter expertise

This course is part of the Rust Programming 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 4 modules in this course

This comprehensive Rust programming course welcomes learners of all levels, including beginners and those with some programming experience. No prior knowledge of Rust is required, making it accessible to coding novices. Throughout the course, you will gain a solid foundation in Rust programming and develop proficiency in advanced concepts, enabling you to write efficient, reliable, and high-performance code. You will understand the core concepts and syntax of Rust, learn effective code organization, error handling techniques, and explore Rust's package manager for efficient project management. By completing this course, you will have the skills to develop reliable and high-performance applications, regardless of your prior programming experience.

This week, you will learn how to optimize your Rust development workflow using powerful tools such as programming suggestions, prompts with Copilot, and GitHub Codespaces. By diving into the lessons on programming with suggestions, using prompts with Copilot, and exploring the fundamentals of Codespaces, you will acquire the skills to streamline your coding process and collaborate more efficiently with others.

What's included

23 videos14 readings4 assignments1 discussion prompt

23 videosβ€’Total 88 minutes
  • Meet your Course Instructor: Alfredo Dezaβ€’2 minutes
  • About This Courseβ€’3 minutes
  • Overview of Installing Rustβ€’1 minute
  • Demo: Installing Rustβ€’6 minutes
  • Demo: Visual Studio Codeβ€’8 minutes
  • Demo: Enabling the Rust Analyzerβ€’4 minutes
  • Demo: Using the Rust Analyzerβ€’7 minutes
  • Demo: Synchronizing your settingsβ€’4 minutes
  • Summary of Installing Rust and Visual Studio Codeβ€’1 minute
  • Overview of AI Pair Programming with Github Copilotβ€’1 minute
  • Demo: Signing up for GitHub Copilotβ€’4 minutes
  • Demo: Installing and enabling Copilot on Visual Studio Codeβ€’3 minutes
  • Demo: Programming with suggestionsβ€’6 minutes
  • Demo: Using prompts with Copilotβ€’3 minutes
  • Demo: Copilot X and chat-based learningβ€’6 minutes
  • Summary of AI Pair Programmingβ€’1 minute
  • Overview of Codespacesβ€’1 minute
  • Demo: Fundamentals of Codespacesβ€’8 minutes
  • Demo: Understanding usage and quotasβ€’6 minutes
  • Demo: Basics of dev containersβ€’4 minutes
  • Demo: Customizing the editorβ€’3 minutes
  • Demo: Customizing the environmentβ€’4 minutes
  • Summary of Codespacesβ€’1 minute
14 readingsβ€’Total 140 minutes
  • Connect with your instructorβ€’10 minutes
  • Course Structure and Discussion Etiquetteβ€’10 minutes
  • Report a problem with the courseβ€’10 minutes
  • Key termsβ€’10 minutes
  • Getting Started: Visual Studio Code, Github Codespaces, and Rustβ€’10 minutes
  • Practice External Lab: Install Rust with Visual Studio Codeβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Optional: Quickstart for GitHub Copilotβ€’10 minutes
  • Optional: Setting up your Student Account with GitHubβ€’10 minutes
  • Practice External Lab: Enabling GitHub Copilotβ€’10 minutes
  • Key Termsβ€’10 minutes
  • GitHub Codespaces for Studentsβ€’10 minutes
  • Optimizing Codespacesβ€’10 minutes
  • External Lab: Using GitHub Codespaces with Copilotβ€’10 minutes
4 assignmentsβ€’Total 120 minutes
  • Rust environmentβ€’30 minutes
  • AI Pair programmingβ€’30 minutes
  • Practice quizβ€’30 minutes
  • Your Development Environmentβ€’30 minutes
1 discussion promptβ€’Total 10 minutes
  • Meet and Greet (optional)β€’10 minutes

This week, you will dive into the essential concepts of control flow, error handling, and functions in Rust programming. By exploring the lessons on conditional statements, loops (including the while and for loops), break and continue statements, match control flow, and error handling, you will gain a solid understanding of how to effectively control the flow of your code and handle errors. Additionally, you will explore the fundamentals of functions in Rust, including unit functions, return values, using arguments, and the borrowing concept.

What's included

24 videos7 readings2 assignments7 ungraded labs

24 videosβ€’Total 96 minutes
  • Introduction to Rustβ€’1 minute
  • Demo: Create a new Rust projectβ€’6 minutes
  • Demo: Overview of project filesβ€’6 minutes
  • Demo: Basic components of Rust codeβ€’6 minutes
  • Demo: Variable assignment and immutabilityβ€’6 minutes
  • Demo: Basics of control flowβ€’4 minutes
  • Demo: Shadowing variablesβ€’6 minutes
  • Summary of Introduction to Rustβ€’1 minute
  • Introduction to Loops and Control Flowβ€’1 minute
  • Demo: Introduction to Loops in Rustβ€’3 minutes
  • Demo: Conditional Statements in Rustβ€’4 minutes
  • Demo: The while Loop in Rustβ€’3 minutes
  • Demo: The for Loop in Rustβ€’5 minutes
  • Demo: The break and continue statements in Rustβ€’3 minutes
  • Demo: The match Control Flow Statement in Rustβ€’5 minutes
  • Summary of Loops and Control Flowβ€’1 minute
  • Introduction to Function Basicsβ€’1 minute
  • Demo: Simple unit functionsβ€’2 minutes
  • Demo: Return valuesβ€’6 minutes
  • Demo: Using argumentsβ€’4 minutes
  • Demo: The borrowing conceptβ€’10 minutes
  • Demo: Using panic to stop a programβ€’4 minutes
  • Demo: Basic error handling with matchβ€’7 minutes
  • Summary of Function Basicsβ€’1 minute
7 readingsβ€’Total 70 minutes
  • Repository for this weekβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Optional: Create your first Rust Program Microsoft Learn Moduleβ€’10 minutes
  • Optional: Understanding Rust memory management Microsoft Learn Moduleβ€’10 minutes
  • External Lab: Create a File Reader Applicationβ€’10 minutes
2 assignmentsβ€’Total 60 minutes
  • Practice Quizβ€’30 minutes
  • Basics of Rust programmingβ€’30 minutes
7 ungraded labsβ€’Total 420 minutes
  • Practice Internal Lab: Create a new Rust projectβ€’60 minutes
  • Practice Internal Lab: Use the Basics of Control flowβ€’60 minutes
  • Practice Internal Lab: Conditional statementsβ€’60 minutes
  • Practice Internal Lab: Match control flow statementsβ€’60 minutes
  • Practice Internal Lab: Using arguments in functionsβ€’60 minutes
  • Practice Internal Lab: Using the borrowing conceptβ€’60 minutes
  • Practice Internal Lab: Basic error handling with matchβ€’60 minutes

This week, you will learn about various data structures and types in Rust. We'll cover defining structs, creating instances, and associated functions. Additionally, you'll explore string manipulation using String and str types. The course will also touch upon vectors, covering value retrieval and element addition. You'll gain familiarity with enums, including the Option enum and its applications, as well as using vectors with enums. Lastly, we'll focus on exhaustive matches for handling enum cases. Practical assessments throughout the course will reinforce your understanding of Rust's data structures and types.

What's included

21 videos7 readings1 assignment8 ungraded labs

21 videosβ€’Total 94 minutes
  • Introduction to Structured Dataβ€’1 minute
  • Demo: Defining structsβ€’4 minutes
  • Demo: Creating struct instancesβ€’5 minutes
  • Demo: Associated functions and constructorsβ€’8 minutes
  • Demo: Other struct usesβ€’4 minutes
  • Summary of Structured Dataβ€’1 minute
  • Introduction to Strings and Vectorsβ€’1 minute
  • Demo: Understanding String and strβ€’5 minutes
  • Demo: Getting Started with Rust String Manipulationβ€’6 minutes
  • Demo: Basics of Vectorsβ€’7 minutes
  • Demo: Retrieving values from Vectorsβ€’8 minutes
  • Demo: Adding elements to Vectorsβ€’4 minutes
  • Summary of Strings and Vectorsβ€’1 minute
  • Introduction to Enums and Variantsβ€’2 minutes
  • Demo: Defining an Enumβ€’4 minutes
  • Demo: Using Enum as a Typeβ€’5 minutes
  • Demo: The Option Enumβ€’8 minutes
  • Demo: Applied Enumsβ€’6 minutes
  • Demo: Using Vectors with Enumsβ€’5 minutes
  • Demo: Exhaustive matchesβ€’5 minutes
  • Summary of Enums and Variantsβ€’1 minute
7 readingsβ€’Total 70 minutes
  • Repository for this weekβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Optional: Using Loops to Iterate Over Data Microsoft Learn Moduleβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Optional: Handling Errors in Rust Microsoft Learn Moduleβ€’10 minutes
  • External Lab: Create a File Size formatterβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Organizing Data in Rust: Structs, Enums, and Typesβ€’30 minutes
8 ungraded labsβ€’Total 480 minutes
  • Practice Internal Lab: Defining structsβ€’60 minutes
  • Practice Internal Labs: Associated functions and constructorsβ€’60 minutes
  • Practice Internal Lab: Getting started with string manipulationβ€’60 minutes
  • Practice Internal Lab: Retrieve values from Vectorsβ€’60 minutes
  • Practice Internal Lab: Adding elements to Vectorsβ€’60 minutes
  • Practice Internal Lab: Using Enum as a typeβ€’60 minutes
  • Practice Internal Lab: Applied Enumsβ€’60 minutes
  • Practice Internal Lab: Using Vectors with Enumsβ€’60 minutes

This week you will explore advanced topics related to code organization, testing, documentation, and library development. By delving into the lessons on verifying code with doctest, working with public and private modules, managing public and private fields, organizing test files, writing tests for your code, testing private code, using test failure messages effectively, and documenting your code, you will acquire the necessary skills to create robust and well-structured Rust projects.

What's included

22 videos11 readings1 assignment8 ungraded labs

22 videosβ€’Total 115 minutes
  • Introduction to Libraries and Cargoβ€’1 minute
  • Demo: Creating the library with Cargoβ€’4 minutes
  • Demo: Adding code to libβ€’7 minutes
  • Demo: Documenting your codeβ€’8 minutes
  • Demo: Using a debuggerβ€’9 minutes
  • Demo: Using a Makefileβ€’13 minutes
  • Summary of Libraries and Cargoβ€’1 minute
  • Introduction to Modulesβ€’1 minute
  • Demo: Using Cargo for dependenciesβ€’5 minutes
  • Demo: Extending with modulesβ€’5 minutes
  • Demo: Verify code with doctestβ€’5 minutes
  • Demo: Defining Public and Private modulesβ€’6 minutes
  • Demo: Private and public fields in Structsβ€’10 minutes
  • Summary of Modulesβ€’1 minute
  • Introduction to Testingβ€’2 minutes
  • Demo: Organizing test filesβ€’4 minutes
  • Demo: Introduction to testing in Rustβ€’4 minutes
  • Demo: Writing tests for your codeβ€’9 minutes
  • Demo: Testing private codeβ€’11 minutes
  • Demo: Using test failure messagesβ€’4 minutes
  • Summary of Testingβ€’1 minute
  • Course Summaryβ€’2 minutes
11 readingsβ€’Total 110 minutes
  • Repository for this weekβ€’10 minutes
  • Key termsβ€’10 minutes
  • Optional: Debugging in Visual Studio Codeβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Optional: Managing growing projects in Rustβ€’10 minutes
  • Key Termsβ€’10 minutes
  • Optional: Write Automated Tests Microsoft Learn Moduleβ€’10 minutes
  • Optional: Test Organizationβ€’10 minutes
  • External Lab: Create a Rust libraryβ€’10 minutes
  • Next stepsβ€’10 minutes
  • Share your learning experienceβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Rust Components and Patternsβ€’30 minutes
8 ungraded labsβ€’Total 480 minutes
  • Practice Internal Lab: Create a library with Cargoβ€’60 minutes
  • Practice Internal Lab: Document your codeβ€’60 minutes
  • Practice Internal Lab: Use a Makefileβ€’60 minutes
  • Practice Internal Lab: Verify code with Doctestβ€’60 minutes
  • Practice Internal Lab: Define Public and Private modulesβ€’60 minutes
  • Practice Internal Lab: Use Private and public fields in Structsβ€’60 minutes
  • Practice Internal Lab: Write tests for your codeβ€’60 minutes
  • Practice Internal Lab: Test private codeβ€’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.

Instructors

Instructor ratings
4.2 (96 ratings)
Duke University
40 Coursesβ€’282,939 learners

Explore more from Machine Learning

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."

Learner reviews

  • 5 stars

    55.14%

  • 4 stars

    18.10%

  • 3 stars

    9.87%

  • 2 stars

    8.23%

  • 1 star

    8.64%

Showing 3 of 243

CP
Β·

Reviewed on Apr 30, 2024

Great hands on lessons. Thoroughly organized. I am grateful for the learning experience.

M
Β·

Reviewed on Oct 18, 2024

Course is very good for this how start to learn Rust. It give essential knowledge that you can start to coding.

CZ
Β·

Reviewed on Dec 12, 2023

Great course serving as an introduction to Rust programming.

Frequently asked questions

To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.

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,