The Rust Programming Language

Learn a modern, powerful yet safe systems programming language!
The Rust Programming Language
File Size :
2.78 GB
Total length :
8h 18m



Dmitri Nesteruk


Last update




The Rust Programming Language

What you’ll learn

Solve problems in Rust
Understand Rust’s strengths and weaknesses
Effectively leverage Rust’s memory safety guarantees
Write applications and libraries
Test and document your code

The Rust Programming Language


Basic knowledge of computer science
A computer with a Rust-enabled IDE (VisualRust, intellij-rust, etc.)


This course will teach you the fundamentals of Rust, a modern programming language that has the both the power of native code as well as the safety of some managed languages. In this course you will learn the following:
How to download and install Rust; how to compile programs and (optionally) work with an IDE.Learn about fundamental data types and how to use them to declare variables.Undersand arrays, vectors and strings, the concept of slices.Learn to create functions, methods, closures, higher-order functions.Understand how to create various data structures such as structs and enums; also traits.Master Rust’s explicit take on the concept of lifetime with ownership, borrowing, lifetime specifiers, lifetime elision.Learn how to safely share data around your (possibly multithreaded) application with Rc, Arc and Mutex.Use Rust’s package managent using Cargo.Learn about other useful topics: documentation, conditional compilation, testing.
This course, like all my other courses, will be supplemented with additional lectures based on participants’ requests.


Section 1: Introduction

Lecture 1 Course Introduction

Lecture 2 Installing and Configuring Rust

Lecture 3 Hello, Rust!

Lecture 4 Introducing the Cargo Package Manager

Lecture 5 Rust in IntelliJ IDEA

Section 2: Types and Variables

Lecture 6 Numbers on the Computer

Lecture 7 Application Entrypoint

Lecture 8 Core Data Types

Lecture 9 Operators

Lecture 10 Scope and Shadowing

Lecture 11 Declaring and Using Constants

Lecture 12 Stack and Heap

Lecture 13 Debugging Rust Applications with CLion

Section 3: Control Flow

Lecture 14 If Statement

Lecture 15 While and Loop

Lecture 16 For Loops

Lecture 17 Match Statement

Lecture 18 Combination Lock

Section 4: Data Structures

Lecture 19 Structs

Lecture 20 Enumerations

Lecture 21 Unions

Lecture 22 Option and if let/while let

Lecture 23 Arrays

Lecture 24 Slices

Lecture 25 Tuples

Lecture 26 Pattern Matching

Lecture 27 Generics

Section 5: Standard Collections

Lecture 28 Overview

Lecture 29 Vec(tor)

Lecture 30 HashMap

Lecture 31 HashSet

Lecture 32 Iterators

Section 6: Characters and Strings

Lecture 33 Strings

Lecture 34 String Formatting (format!)

Lecture 35 Number Guessing Game

Section 7: Functions

Lecture 36 Functions and Function Arguments

Lecture 37 Methods

Lecture 38 Closures

Lecture 39 Higher-Order Functions

Section 8: Traits

Lecture 40 Traits

Lecture 41 Trait Parameters

Lecture 42 Into

Lecture 43 Drop

Lecture 44 Operator Overloading

Lecture 45 Static Dispatch

Lecture 46 Dynamic Dispatch

Lecture 47 Why Dynamic Dispatch?

Lecture 48 Vectors of Different Objects

Section 9: Lifetime and Memory

Lecture 49 Ownership

Lecture 50 Borrowing

Lecture 51 Lifetime

Lecture 52 Lifetime in Structure Implementation

Lecture 53 Reference-Counted Variables (Rc)

Lecture 54 Atomic Reference-Counted Variables (Arc)

Lecture 55 Using a Mutex for Thread-Safe Mutability

Section 10: Advanced Topics

Lecture 56 Circular References

Section 11: Concurrency

Lecture 57 Spawning and Joining Threads

Section 12: Odds & Ends

Lecture 58 Consuming Crates

Lecture 59 Building Modules and Crates

Lecture 60 Testing

Lecture 61 Comments and Documentation

Systems programmers,Experienced developers interested in Rust,C/C++ programmers

Course Information:

Udemy | English | 8h 18m | 2.78 GB
Created by: Dmitri Nesteruk

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top