Context API
* 깊은 곳에 위치하는 컴포넌트에게 여러 컴포넌트를 거쳐서
함수를 전달해야 하는 일이 있다면 Context API 를 사용
const UserDispatch = React.createContext(null);
<UserDispatch.Provider value={dispatch}>...</UserDispatch.Provider>
```
export const UserDispatch = React.createContext(null);
import { UserDispatch } from './App';
```
immer 라이브러리
* 데이터의 구조가 복잡해져서 불변성을 유지하면서 업데이트하려면 코드가 복잡해지는 상황이 올때 사용
$ yarn add immer
import produce from 'immer';
```
VS code 익스텐션
* Prettier, ESLint, Snippet