Study Guide: ReactJS + Redux
Tags: react, javascript, redux
Published: 2021-08-18 17:31:54

:cd:Here is a study guide I curated for ReactJS + Redux beginners, people who need a refresh, or anyone just looking to learn something new!:cloud:

I've broken it down into a few subtopics:
* [INTRODUCTION TO REACT / GENERAL](#INTRODUCTION-GENERAL)
* [COMPONENTS](#COMPONENTS)
* [STATE + PROPS](#STATE-PROPS)
* [ROUTING](#ROUTING)
* [EVENTS](#EVENTS)
* [LIFECYCLE HOOKS + LIFECYCLE METHODS](#LIFECYCLE)
* [REDUX](#REDUX)
* [JWT AUTHENTICATION](#JWT)

### INTRODUCTION TO REACT / GENERAL <a name="INTRODUCTION-GENERAL"></a>

1. What is React?
2. What are React's core features?
3. How is React code written? 
4. What is JSX?
5. What is the Virtual DOM?
6. What is memoization? Give an example.
7. What is client-side routing?
8. What is object destructuring? Give an example. 
9. What does "referentially transparent" mean?
10. What does "reconciliation" mean?
11. What is the difference between a framework and a library?
12. What is ReactDOM?
13. What does ReactDOM.render() do?
14. What is Babel?
15. What is transpiling? What is compiling?
16. What is Node Package Manager? What does it do?
17. What is Webpack? What does it do?
18. What does "unidirectional data flow" mean?
19. What is the purpose of keys?

### COMPONENTS <a name="COMPONENTS"></a>

1. What are the key features of Class components?
2. What are the key features of Functional components?
3. What is a "controlled" component? What is an "uncontrolled" component?
4. What is a "pure" component?
5. Is there a difference between class and functional components? (Think state, functionality, syntax)
6. What is the React.Component class? What is its purpose?

### STATE + PROPS <a name="STATE-PROPS"></a>

1. Describe state.
2. Describe props.
3. What are the ways we can update state?
4. What is the difference between React state and Redux State?
5. What is a "controlled" form?

### ROUTING <a name="ROUTING"></a>

1. What is React-Router? What does it do?
2. What are routeProps?
3. How does React handle nested routes?
4. How does React handle routing in general?
5. What does the Switch component do? 

### EVENTS <a name="EVENTS"></a>

1. How does React handle events? Give an example. 
2. What is a "synthetic" event?
3. What is a "native" event?
4. What is the purpose of "e.preventDefault()"?

### LIFECYCLE HOOKS + LIFECYCLE METHODS <a name="LIFECYCLE"></a>

1. What is a Lifecycle Hook? Name + describe some examples. 
2. What is a Lifecycle Method? Name + describe some examples.
3. What is mounting? What is unmounting?
4. Is there ultimately a difference between Lifecycle Hooks and Lifecycle Methods?


### REDUX <a name="REDUX"></a>

1. What is Redux? Name some core features. 
2. What is the Redux "store"?
3. What is an action? How do actions work? What do they return?
4. What is a reducer? How do reducers work? What do they return?
5. How does React and Redux communicate?
6. What is an action creator?
7. What is dispatching?
8. How does the store get updated?
9. What is mapPropsToState()?
10. What is mapDispatchToState()?
11. What is connect()?
12. Using Redux, when do components get rerendered?
13. What is Thunk?
14. What does "Provider" do?


### JWT AUTHENTICATION <a name="JWT"></a>

1. What is JWT?
2. What is the JWT structure?
3. Describe the JWT header.
4. Describe the JWT payload.
5. Describe the JWT signature. 
6. How does JWT work? What is the flow?
7. What is a token?


:cd:Thank you for reading along!:cd:
:cloud:Comment below for any suggestions!:cloud: