Okay, so now we've reached the end of section five, and in this section we took a look at Redux and
installed and implemented Redux functionality using things like the Redux toolkit, the React Redux
bindings that allow us to connect our react application to Redux.
And we've improved our data fetching by using RTK query and all of the functionality that comes along
with that, things like caching, which pretty much instantly improves the performance perception of
our application.
And we also took a look at those excellent DevTools that are the Redux DevTools as well.
So just some frequently asked questions.
Well, one of them really do we need Redux.
And that's one of the questions that I guess really we should ask ourselves before we go ahead implementing
something like Redux and in our specific application.
Do we need it?
And I would say no, not really.
We could use the react context which gives us centralized state management, if you like, in a react
application.
But Redux does give us more, and it does give us the centralized state management.
It's much more scalable than react context.
If our application grows, then scalability is something that we now have with the Redux system of state
management.
We get advanced tools like Redux middleware and RTK query and the DevTools as well.
And as far as performance optimization goes, then Redux again wins that battle as well.
So whilst we don't really have to have it for an application, I know exactly how large it's going to
be and what it's going to do.
If the question is, do we absolutely have to have it, I'd say no, but I really wanted to have it.
So we have it is the answer to that.
And it's a good thing to learn as well.
And this is a training course after all.
So that's my excuse for a little bit of overengineering.
So anyway, now we have Redux installed.
What we're going to take a look at next is error handling in our application.
Something that we might not want to do, but is something that is important to do in our application.