Redux

Jong-uk·2023년 5월 30일
0

엘리스 온라인 학습

목록 보기
39/39

01. Redux 소개

Redux?

  • 앱 전체 상태를 쉽게 관리하기 위한 라이브러리.
  • Redux의 많은 개념들이 Flux pattern에서 차용됨.
  • 주로 React 앱과 같이 사용.
  • redux.js.org에서 수많은 문서를 참고할 수 있고, 웹상에 Redux를 활용한 앱 구축 사례가 많음.

언제 사용??

  • 앱 전체의 상태 관리가 필요할 때.
  • 복잡한 비동기 처리가 있는 상태 관리가 필요할 때.
  • 앱의 상태가 복잡하고, 이를 체계적으로 관리하고 싶을 때.
  • 상태 관리 패턴을 도입하여, 여러 개발자와 협업하고 싶을 때.
  • logger, devtool 등을 활용하여 상태를 관리할 필요가 있을 때.

원칙

  • Single source of truth - Store는 단 하나이며, 모든 앱의 상태는 이곳에 보관됨.
  • Immutability – 상태는 오로지 읽을 수만 있다. 변경하려면 모든 상태가 변경 되어야 함.
  • Pure function – 상태의 변경은 어떠한 사이드 이펙트도 만들지 않아야 함.

02. Redux의구조

구조

  • redux는 자유롭게 확장하여 사용할 수 있음.
  • 내부적으로 action과 데이터가 어떻게 흐르는지 이해하고, middleware, enhancer 등을 이용하여 redux를 확장함.

middleware

  • action은 dispatch 이후 모든 middleware를 먼저 통과한 후에 reducer에 도달.
  • redux-thunk, redux-logger 등의 라이브러리를 적용.

enhancer

  • action은 dispatch 이후 모든 middleware를 먼저 통과한 후에 reducer에 도달.
  • redux devtools 등의 라이브러리를 적용.

03. redux-toolkit 활용

04. Redux를 React에 연결하기

05. Redux를 이용한 비동기 처리

profile
안녕하세요! 만나서 반갑습니다.

0개의 댓글