반응형
서버 개발자로써 프론트엔드를 자세히 깊게 배울 생각은 없었지만, 프론트엔드 작업을 하면서 자연스럽게 불편함과 필요함을 느껴 하나하나 배우다 보니 Redux까지 쓰게 됐습니다. 처음에는 굳이 Redux까지 도입해야 할까 싶었지만, 여러 Component에 걸쳐 Props를 전달하고, 상태를 관리하다 버그를 만나서 디버깅을 하다 보니, 자연스럽게 상태관리 Library를 쓰지 않으면 코딩이 너무 고통스러워서 Redux를 배우게 됐습니다.
Redux, 뭐고 왜 필요할까?
웹 애플리케이션에서는 다양한 상태가 필요합니다. 점점 애플리케이션이 복잡해 지면서 자연스럽게 관리해야 할 상태가 늘어나고, Component들을 분리하면서 상태들을 Props를 통해 전달해야 하는 경우도 많아집니다.
이럴때 상태 관리 Library를 쓰면 UI와 상태의 관심사를 분리하고, React의 본질인 선언적인 UI 작성을 이어나갈 수 있습니다.
기본적인 용어
Store | 상태 변수들이 저장되는 곳 |
Action | 뭐를 하고 싶은지 보내는 것 |
Reducer | Store에 있는 State들을 어떻게 업데이트 해야 하는지 Action을 받아서 적절한 동작을 수행합니다. (함수) |
Middleware | 추가적인 동작 (Logging, 비동기 요청) |
Dispatch | Reducer에게 Action을 보내는 방법 |
위 용어를 참고해 요약해 보면,
- 애플리케이션 전체에 걸쳐 쓰는 상태들을 Store에 저장
- Reducer에 각 Action 별로 수행해야 할 동작들을 정의해 둠
- Dispatcher로 Action을 보내서 Store에 있는 상태를 조작함
React Redux?
React-Redux는 Redux와 React의 Binding Library입니다.
Redux의 다양한 기능들을 React에서 쉽게 사용할 수 있게 도와주는 역할 합니다.
반응형
'👨💻 프로그래밍 > 🧑🎨 Frontend' 카테고리의 다른 글
CSS를 조금 더 우아하게 쓰기 위한 최소한의 SASS (1) | 2023.05.26 |
---|---|
Github Pages에 React Router 적용된 React App 배포하기 (0) | 2022.11.11 |