Email: contact@fastbitlab.com

Master The Rust Programming Language :
Beginner To Advanced

Learn Rust(Latest 2021 Edition) programming step by step with hands-on exercises, from basics to advanced levels.

Buy From FastBit

logo-2048x2048_4

Buy From Udemy

Udemy_Icon

Course Content

19 sections • 121 lectures • 18h 16m total length

Introduction  – [03:23]
How Rust is different from other programming languages? Immutability – [05:02]
Course repository – [00:03]
Borrowing – [08:09]
Rust automatically deallocates heap memory – [02:42]
Features related to type inference, ownership, error handling, and dangling pointers – [10:25]
Create, Build, Run a Rust program – [12:15]
Print related macros in Rust –   [07:17]
format!() and named place holders – [08:15]
Exercise-diy-1 – [01:45]
Useful cargo tools – [16:03]
Printing in hex and binary formats – [02:28]
Exercise-diy-2 -[00:12]
Exercise-diy-3 -[00:12]
r and r# tagging of strings -[07:28]
Variables, mutability and data types explanation – [32:27]
‘as’ keyword and storing ASCII values – [08:20]
char data type – [07:49]
Exercise-diy-4 – [00:18]
Array and array iteration – [13:55]
Exercise-diy-5 – [00:50]
Arithmetic operators and short hand notations – [08:02] 
Writing a Function in Rust – [16:17]
Unit testing in Rust – [08:25]
Writing test cases – [16:45]
Standard library assert macros – [16:46]
Writing test cases contd. – [15:04]
References  – [08:34]
Borrow, Borrower and Referent- [14:06]
slice data type – [22:47]
Std. library functions of the slice data type – [10:14]
Using if..else as statements and expressions – [11:56]
The ‘match’ statement – [18:17]
Using if..else if..else and if let..else if let…else – [07:18]
comparision and logical operators – [10:18]
Bitwise Operators – [16:01]
Exercise-diy-6 – [00:25]
Exercise-diy-6.2 -[00:45]
Strings in Rust – [21:15]
Strings and UTF-8 format – [04:40]
Slice of a String – [10:28]
Converting String to Slice and vice versa – [04:45]
String concatination – [08:01]
String Indexing – [17:36]
Exercise-diy-7-Part-1 -[14:38]
Exercise-diy-7-Part-2 – [12:40]
Exercise-diy-7-Part-3 – [06:56]
Ownership, Move, and Copy semantics – [17:13]
Call by value and Call by reference – [06:43]
Loop statements in Rust – [13:43]
Different ways of Iteration using for..in loop – [09:13]
Solution – [01:26]
while and while let loops – [09:09]
Exercise-diy-8 -[00:33]
Tuple datatype – [11:06]
Pattern matching with tuples – [20:35]
Tuple matching and Move – [04:28]
ref keyword – [05:05]
Exercise-diy-9 – [00:56]
Exercise-diy-10 – [00:39]

 

Creating and Initializing a struct – [08:39]
Is struct ‘move’ or ‘copy’? – [17:12]
Struct and Default trait – [06:13]
Tuple struct and Unit struct – [08:39]
Writing Struct methods – [13:02]
Associated function as Constructor of a Struct – [10:00]
Pattern matching with Struct – [10:58]
ref and @ usage with struct pattern matching – [02:02]
  • Defining an Enum in Rust -[21:59]
  • Methods and associated functions of an Enum – [10:38]
  • Pattern matching using Enums – [07:19]
  • Option type – [15:40]
  • Option Usage – [11:21]
Introduction to Vectors – [09:26]
Vectors under the hood – [07:17]
Vector indexing – [11:00]
Slice of a vector – [04:40]
Vector methods: push(), pop(), shrink_to_fit() – [06:51]
Exercise-diy-11 – [08:43]
Vector methods: drain(), extract_if() – [10:13] 
Vector methods: retain(), retain_mut() – [07:35]
Vector methods: split() and friends – [09:28]
Vector methods: splice(), append(), extend() – [07:51]
Vector methods: prepend using index() and splice() – [05:12]
VecDeque – [11:00]
Enum Result – [01:46]
Error handling using Result enum – [10:49]
Exercise on Result enum – [03:56]
Error propagation operator ( ? ) – [05:56]
Converting ‘Option’ to ‘Result’ type – [05:12]
unwrap() and expect() methods – [03:31]
unwrap_err() – [05:23]
Std. Library error types – [04:20]
Handling std::io::Error – [16:22]
Numeric Errors : Exercise – [02:21]
Numeric Errors : Exercise contd – [08:02]
Exercise on error conversion – [02:04]
Exercise on error conversion contd. – [13:29]
map_err() usage – [05:30]
Auto conversion of errors – [02:31]
HashMap and its methods part-1 -[14:50]
HashMap and its methods part-2 – [11:39]
Generics syntax and Writing generic functions – [17:26]
Function with multiple generic type parameters –  [1:59]
Generic structs and Enums – [12:35]
Lifetime and scope – [12:57]
Lifetime annotations example – [24:25]
Lifetime elision rules – [12:21] 
Lifetime annotations with structs – [03:21]
Lifetime annotations with structs contd. – [06:18]
Lifetime annotations with struct methods – [22:05]
Const. and Static variables – [07:39]
Introduction to Trait and Trait methods – [15:20]
Associated types of a Trait – [11:52]
Exercise: Implementing Display trait for user defined structure part-1 – [07:08]
Exercise: Implementing Display trait for user defined structure part-2 – [10:06]
Exercise: Implementing Display trait for user defined structure part-3 – [05:08]
Trait bounds – [11:14]