Video description
If you want to start with Rust I recommend this course without a doubt.
Roberto Gammino, e-power
In Rust in Motion, premier Rust experts Carol Nichols and Jake Goulding, introduce you to the Rust programming language! Designed for modern systems programming, Rust delivers impressive speed and thread-safe concurrency. As coauthor of The Rust Programming Language, Carol literally helped write “The Book,” as the Rust community affectionately calls it. Jake created the Rust FFI Omnibus, and he’s also the #1 contributor to the Rust tag on Stack Overflow. If you’re ready to get started writing production-quality lightning-fast systems code, this course is for you!
Rust in Motion is an all-access pass to Rust, brought to you by top authorities on the subject. Carol and Jake’s masterful instruction jumpstarts your learning with a spotlight on what's different and special about Rust! This skilled duo challenges you to dig deeply into the nuts and bolts of variables, primitive data types, functions, control flow constructs, defining enums and structs, and adding behavior to them with methods. You’ll learn memory management via ownership and borrowing, techniques for error handling, lifetime annotations, and other unique Rust concepts. With this course’s code examples, inspired by real-world scenarios, you’ll be ready to hit the ground running!
Rust’s popularity is surging among systems programmers. Aiming to be an alternative to C and C++, Rust’s extraordinary speed comes largely from its memory safety, which it achieves without resource-greedy garbage collection. Other enticing features of this hot systems programming language include its rich type system, heavy functional programming influence, and freedom from a runtime requirement. Command line applications, networking, embedded services, and WebAssembly are some of the areas where Rust really shines!
Inside:
- How to determine the data types of variables
- Rust’s primitive data types
- How to write idiomatic functions
- Control flow constructs, including the match expression
- Defining your own data types using enums and structs
- Adding behavior to enums and structs with methods
- Ownership and borrowing
- Error handling
- Lifetime annotations
Perfect for programmers with experience in a language like Java, JavaScript, Ruby, or Python.
Carol Nichols co-authored The Rust Programming Language and is a member of the Rust Core Team. Jake Goulding is the creator of The Rust FFI Omnibus, a member of the Rust Infrastructure Team, and the top contributor on the Rust tag on Stack Overflow. Together, Carol and Jake cofounded Integer 32, the world’s first Rust consultancy.
Table of Contents
INTRODUCTION TO THE COURSE AND RUST SYNTAX
Introduction
00:04:54
Installing
00:07:30
Variables
00:04:49
Data types
00:07:01
Functions
00:03:41
Control flow
00:08:30
Enums
00:04:49
Structs
00:06:33
Methods
00:08:26
- OWNERSHIP AND BORROWING
Unit overview
00:03:47
What is ownership?
00:09:25
Ownership exercise solutions
00:05:35
Borrowing
00:07:40
Slices
00:07:26
Borrowing and mutability
00:07:26
Borrowing code patterns
00:13:32
Ownership of more than just memory
00:07:02
- ERROR HANDLING
Unit overview
00:02:41
Panicking when something goes wrong
00:10:39
Handling results and options
00:07:15
Writing a function that returns a result and using the question mark operator
00:08:10
Advantages of Rust’s error handling strategy
00:10:09
Custom error types
00:10:25
Error handling crates
00:10:27
Useful methods on result and option
00:06:44
- LIFETIMES
Unit overview
00:02:39
An exploration of concrete lifetimes
00:08:19
Visualizing lifetimes to understand borrow checker errors
00:11:02
An exploration of generic lifetimes
00:10:25
A short introduction to generics
00:07:09
Lifetime parameters are a kind of generic
00:10:29
Lifetime parameters are descriptive, not prescriptive
00:06:47
Lifetime elision
00:06:13