Redux
React 상태관리 라이브러리
상태
- state는 컴포넌트 내에서 관리.
- 자식 컴포넌트 간 데이터 전달은 직접 못 함. 상태를 관리하는 부모 컴포넌트로 가능.
- 자식 많아지면 상태 관리 복잡해짐. -> prop drilling
리덕스를 왜 사용할까?
상태를 컴포넌트 안에서만이 아니라 바깥에서도 관리할 수 있다.

Store
상태가 관리되는 오직 하나의 공간
- 컴포넌트와 별개다. 스토어 안에서 필요한 상태를 담을 수 있다.
Action
앱에서 스토어로 운반할 데이터
Reducer
Store 상태를 업데이트하는 중간 단계
- Action은 Reducer로 전달된 다음, Reducer가 Action을 보고 Store의 상태를 업데이트한다.
- Action을 Reducer로 보내려면 dispatch() 메서드가 필요하다.
Redux 사용
- 스토어 설정
- 컴포넌트가 스토어 구독
- 스토어에 상태 변경 알림
- 리듀서로 상태를 변화시킴
- 상태 변화하면 구독한 컴포넌트에게 알림
Redux 사용해야 할 때
- 전역 상태 필요할 때
- 상태 자주 업데이트될 때
- 앱이 크고 관리하는 사람이 많을 때