Redux란?

Redux는 상태 관리 라이브러리입니다.

Redux - 자바스크립트 앱을 위한 예측 가능한 상태 컨테이너. | Redux

https://ko.redux.js.org/img/favicon/favicon.ico

Write a caption

Redux의 장점

예측 가능한

Redux는 일관적으로 동작하고, 서로 다른 환경(클라이언트, 서버, 네이티브)에서도 실행되며, 테스트하기 쉬운 앱을 작성하도록 도와줍니다.

중앙화된

앱의 상태와 로직을 중앙화하여 실행 취소/다시 실행, 영속적인 상태 등의 강력한 기능을 사용할 수 있게 합니다.

디버깅이 쉬운

Redux DevTools는 앱의 상태가 언제, 어디서, 왜, 어떻게 바뀌었는지 쉽게 추적할 수 있도록 해줍니다. Redux의 아키텍처를 통해 변경사항을 기록하고, **"시간여행형 디버깅"**을 사용하고, 완전한 에러 리포트를 서버로 보낼 수 있습니다.

유연한

Redux는 어떤 UI 레이어에서도 동작하며, 여러분의 요구에 부합하는 거대한 애드온 생태계를 가지고 있습니다.

Redux의 개본 3가지 원칙

1.Single source of truth

동일한 데이터는 항상 같은 곳에서 가지고 온다.

2.State is read-only

React 에서 setState를사용하여 상태 변경이 가능한것 처럼 Redux에서는 Action이라는객체를 통하서만 상태를 변경할 수 있다.

3.Changes are made with pure functions