1 00:00:06,510 --> 00:00:09,690 - Hello and welcome to Rust Programming Part 2. 2 00:00:09,690 --> 00:00:12,856 I'm Andy Olsen and I'll be your instructor for the course. 3 00:00:12,856 --> 00:00:14,460 This is the second part 4 00:00:14,460 --> 00:00:17,459 of my Rust Programming Essentials Video Collection. 5 00:00:17,459 --> 00:00:21,150 This course delves into advanced Rust concepts 6 00:00:21,150 --> 00:00:23,610 and walks through a couple of real world projects 7 00:00:23,610 --> 00:00:26,536 to help you take your Rust knowledge to the next level. 8 00:00:26,536 --> 00:00:28,230 If you're new to Rust 9 00:00:28,230 --> 00:00:31,050 or if you feel like you need the refresher, 10 00:00:31,050 --> 00:00:32,760 you might want to take a look at the first part 11 00:00:32,760 --> 00:00:35,820 of this video collection, which I've called Rust Programming 12 00:00:35,820 --> 00:00:39,457 Part 1: Rust Programming Foundations. 13 00:00:39,457 --> 00:00:41,580 Anyway, back to this course. 14 00:00:41,580 --> 00:00:43,560 Lemme tell you what we're gonna cover. 15 00:00:43,560 --> 00:00:45,630 We're gonna begin with a detailed look 16 00:00:45,630 --> 00:00:49,020 at how to organize the code into functions and closures, 17 00:00:49,020 --> 00:00:50,850 which are like lambdas. 18 00:00:50,850 --> 00:00:53,340 Then we'll see how to define data structures 19 00:00:53,340 --> 00:00:58,340 and how to use traits to implement polymorphism in Rust. 20 00:00:58,680 --> 00:01:01,830 We'll also explore some additional Rust programming concepts 21 00:01:01,830 --> 00:01:04,860 like generics and multi-threading. 22 00:01:04,860 --> 00:01:07,650 After that, I'll lead you on a detailed walkthrough 23 00:01:07,650 --> 00:01:10,890 of a couple of real world hands-on projects so you can see 24 00:01:10,890 --> 00:01:13,980 how to put all the pieces together in practice. 25 00:01:13,980 --> 00:01:18,060 The first project will show how to implement a CSV parser, 26 00:01:18,060 --> 00:01:19,410 and the second project will show 27 00:01:19,410 --> 00:01:21,960 how to access a relational database. 28 00:01:21,960 --> 00:01:23,580 These projects were designed 29 00:01:23,580 --> 00:01:25,680 so you can learn the skills needed 30 00:01:25,680 --> 00:01:28,383 to use Rust effectively and efficiently. 31 00:01:29,730 --> 00:01:33,510 So let me say a few words about myself before we dive in. 32 00:01:33,510 --> 00:01:36,630 I'm a freelance developer and instructor, I live in Swansea 33 00:01:36,630 --> 00:01:37,950 in the United Kingdom, 34 00:01:37,950 --> 00:01:41,640 and I've been working in it since 1986. 35 00:01:41,640 --> 00:01:44,730 I started programming in C and C++, and I've moved 36 00:01:44,730 --> 00:01:47,460 into other programming languages over the years. 37 00:01:47,460 --> 00:01:51,870 Java, C#, Python, JavaScript, TypeScript 38 00:01:51,870 --> 00:01:54,030 and obviously Rust itself. 39 00:01:54,030 --> 00:01:55,470 There were several occasions 40 00:01:55,470 --> 00:01:59,310 where Rust didn't behave the way I was expecting. 41 00:01:59,310 --> 00:02:03,090 Many times I was genuinely surprised about how it worked 42 00:02:03,090 --> 00:02:05,394 and I began to realize just how much safer 43 00:02:05,394 --> 00:02:09,090 it makes my code compared to the C++ I've been writing 44 00:02:09,090 --> 00:02:12,810 for the last 30 years, quite a shock to the system. 45 00:02:12,810 --> 00:02:14,880 Anyway, I hope you enjoy the course 46 00:02:14,880 --> 00:02:16,480 and I hope you like my examples.