1 00:00:01,060 --> 00:00:05,690 All right my friends we spent quite a bit of time so far learning about react and now in this video. 2 00:00:05,710 --> 00:00:10,480 We're going to start to dive into the world of redux in this section on and tell you a little bit more 3 00:00:10,480 --> 00:00:12,490 about what redux is. 4 00:00:12,490 --> 00:00:14,940 Redux is a state management library. 5 00:00:15,070 --> 00:00:19,810 When I say state I'm talking about the same state that we've used in class based components throughout 6 00:00:19,810 --> 00:00:21,970 the last two projects we've already worked on. 7 00:00:22,210 --> 00:00:27,580 So with redux rather than authoring state or maintaining state inside of our Riak components we're going 8 00:00:27,580 --> 00:00:31,070 to instead extract it to this redux library. 9 00:00:31,340 --> 00:00:34,030 And this starts to kind of make a little bit of sense. 10 00:00:34,030 --> 00:00:39,880 The re-act library itself is all about rendering content on the screen in handling user interaction. 11 00:00:39,910 --> 00:00:45,450 Its primary goal is not really around maintaining updating or otherwise handling data. 12 00:00:45,670 --> 00:00:50,770 So we're going to make redux in charge of handling data inside of our applications. 13 00:00:50,770 --> 00:00:52,590 Now a couple of other notes redux. 14 00:00:52,750 --> 00:00:57,960 In general it makes creating complex applications a little bit easier as you've seen. 15 00:00:58,000 --> 00:01:01,230 We can absolutely create applications using re-act alone. 16 00:01:01,300 --> 00:01:04,180 And that's what we've been doing already throughout this course so far. 17 00:01:04,180 --> 00:01:10,180 So when we start to integrate redux into our applications we are using it to make creating more advanced 18 00:01:10,180 --> 00:01:14,160 projects a little bit easier than if we were using re-act alone. 19 00:01:14,410 --> 00:01:17,540 So absolutely you can still use react by itself. 20 00:01:17,560 --> 00:01:22,600 You do not have to use redox on every project you work on but in many cases it's going to make your 21 00:01:22,600 --> 00:01:24,320 life just a little bit easier. 22 00:01:25,420 --> 00:01:31,590 Now last quick note here the redux library itself is not explicitly designed to work with react. 23 00:01:31,610 --> 00:01:34,790 In other words it was not created to solve some problem. 24 00:01:34,910 --> 00:01:37,060 Explicitly for react. 25 00:01:37,100 --> 00:01:42,710 You can actually see Rydex in use in many other few libraries and in fact you can even see ports of 26 00:01:42,710 --> 00:01:45,090 redux for other languages as well. 27 00:01:46,790 --> 00:01:51,230 Now before we talk about anything else in the world of Redux I want to give you a quick diagram here 28 00:01:51,260 --> 00:01:53,270 and just a little pep talk. 29 00:01:53,270 --> 00:01:58,970 I've taught a lot of people redux over time and I've always found that it is always most challenging 30 00:01:58,970 --> 00:02:02,360 to under understand redux when you first get started. 31 00:02:02,360 --> 00:02:05,050 So this right here is a little difficulty curve. 32 00:02:05,330 --> 00:02:10,940 When you first start learning this you're going to say I guarantee it you will say what is this crazy 33 00:02:10,940 --> 00:02:11,850 terminology. 34 00:02:12,050 --> 00:02:15,160 What is this library doing and why are we using it. 35 00:02:15,290 --> 00:02:19,940 So when you first start out you get this really high level of difficulty with redux and it tends to 36 00:02:19,940 --> 00:02:22,850 be a little bit challenging to understand what's going on. 37 00:02:23,180 --> 00:02:27,950 But after a little bit you eventually start to understand some different terminology and the entire 38 00:02:27,950 --> 00:02:35,700 design flow of the library and when you hit that point the difficulty curve drops it absolutely plummets 39 00:02:35,940 --> 00:02:39,240 and things tend to get a lot easier from that point on. 40 00:02:39,240 --> 00:02:43,880 So Michael in the next couple of videos is going to be the help you get from this starting point. 41 00:02:43,890 --> 00:02:49,860 Over here to this ending difficulty point over here so that you can then come and get that very quick 42 00:02:49,980 --> 00:02:56,490 drop in difficulty and have a good idea of how we use redox to actually build interesting applications. 43 00:02:56,490 --> 00:02:56,800 All right. 44 00:02:56,820 --> 00:03:02,520 So the only reason I show you this diagram right here is because I promise you without a doubt the first 45 00:03:02,520 --> 00:03:05,660 time we go over this stuff you're going to think it is totally crazy. 46 00:03:05,760 --> 00:03:09,800 But as time goes on it will without a doubt get much easier. 47 00:03:09,810 --> 00:03:13,710 So just stick with it have a little bit of patience and at the end of the day I think you'll have a 48 00:03:13,710 --> 00:03:15,080 pretty good time. 49 00:03:15,180 --> 00:03:16,830 All right so let's take a pause right here. 50 00:03:16,830 --> 00:03:21,300 When we come back the next section we're going to start doing a deep dive with redux in understanding 51 00:03:21,330 --> 00:03:22,670 exactly how it works.