Section 1 : Getting Started
|
Lecture 1 | INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM | |
|
Lecture 2 | What is Rust | 00:03:39 Duration |
|
Lecture 3 | Installing Rust | 00:01:34 Duration |
|
Lecture 4 | Setting Up the Development Environment | 00:01:35 Duration |
|
Lecture 5 | Cargo | 00:06:37 Duration |
Section 2 : Manual Memory Management
|
Lecture 1 | Code for this section | |
|
Lecture 2 | Introduction | 00:00:24 Duration |
|
Lecture 3 | The Stack | 00:03:42 Duration |
|
Lecture 4 | The Heap | 00:04:41 Duration |
|
Lecture 5 | Smart Pointers | 00:01:54 Duration |
|
Lecture 6 | Explore the Memory Layout in GDB |
Section 3 : Building a Command Line Application
|
Lecture 1 | Code for this section | |
|
Lecture 2 | Introduction | 00:00:48 Duration |
|
Lecture 3 | Basic Data Types | 00:02:29 Duration |
|
Lecture 4 | Functions | 00:06:31 Duration |
|
Lecture 5 | Macros | 00:05:43 Duration |
|
Lecture 6 | Mutability | 00:03:22 Duration |
|
Lecture 7 | The Standard Library | 00:05:15 Duration |
|
Lecture 8 | Ownership | |
|
Lecture 9 | References and Borrowing | 00:07:45 Duration |
|
Lecture 10 | Explore the Ownership and Borrowing in GDB | 00:04:44 Duration |
|
Lecture 11 | Finishing Touches | 00:07:09 Duration |
Section 4 : Building a HTTP Server From Scratch
|
Lecture 1 | Code for this section | |
|
Lecture 2 | Introduction | 00:00:44 Duration |
|
Lecture 3 | The HTTP Protocol and the Architecture of Our Server | 00:04:16 Duration |
|
Lecture 4 | Structs | 00:10:50 Duration |
|
Lecture 5 | Strings | 00:17:12 Duration |
|
Lecture 6 | Enums | 00:11:16 Duration |
|
Lecture 7 | The Option Enum | 00:04:09 Duration |
|
Lecture 8 | Organising Our Code into Modules | 00:14:27 Duration |
|
Lecture 9 | Listening for TCP Connections | 00:02:40 Duration |
|
Lecture 10 | The Result Enum | |
|
Lecture 11 | Loops | 00:02:34 Duration |
|
Lecture 12 | Tuples | 00:03:20 Duration |
|
Lecture 13 | The Match Expression | |
|
Lecture 14 | Arrays | 00:10:07 Duration |
|
Lecture 15 | Logging the Incoming Requests to the Console | 00:06:33 Duration |
|
Lecture 16 | Traits and Type Conversions | 00:18:36 Duration |
|
Lecture 17 | Custom Errors | 00:13:19 Duration |
|
Lecture 18 | Advanced Error Handling | 00:08:42 Duration |
|
Lecture 19 | Iterating Over Strings | 00:09:51 Duration |
|
Lecture 20 | Converting an Option into a Result | 00:06:39 Duration |
|
Lecture 21 | Parsing Values From Strings | 00:07:13 Duration |
|
Lecture 22 | The If Let Expression | 00:07:14 Duration |
|
Lecture 23 | Lifetimes - Part 1 | 00:07:44 Duration |
|
Lecture 24 | Lifetimes - Part 2 | 00:19:30 Duration |
|
Lecture 25 | Silencing Compiler Warnings | 00:01:39 Duration |
|
Lecture 26 | Representing the Query String Using a Hash Map - Part 1 | 00:08:10 Duration |
|
Lecture 27 | Representing the Query String Using a Hash Map - Part 2 | 00:17:12 Duration |
|
Lecture 28 | The Derive Attribute | 00:04:48 Duration |
|
Lecture 29 | Modelling the HTTP Response | 00:03:41 Duration |
|
Lecture 30 | Copy and Clone Types | 00:11:00 Duration |
|
Lecture 31 | Writing Data to a TCP Stream | 00:13:24 Duration |
|
Lecture 32 | Dynamic vs Static Dispatch | 00:06:53 Duration |
|
Lecture 33 | Custom Traits | 00:06:15 Duration |
|
Lecture 34 | Implementing Getters | 00:02:59 Duration |
|
Lecture 35 | Routing Incoming Requests | 00:03:01 Duration |
|
Lecture 36 | Working with Environment Variables | 00:06:55 Duration |
|
Lecture 37 | Serving HTML Files | 00:03:49 Duration |
|
Lecture 38 | Serving Arbitrary Files Securely | 00:10:48 Duration |
|
Lecture 39 | Next Steps |