Redux란? > 앱 전체 상태를 관리하기 위한 라이브러리 Redux 핵심원칙 Single Source Of Truth - Store는 단 하나이며, 모든 앱의 상태는 이곳에 보관된다. Immutability - 상태는 오로지 읽을 수만 있다. 상태가 만약 객체라고 한다면 재생성할때, 무조건 새로운 객체를 생성하는 방식으로 변경해야 한다. Pure Function - 상태의 변경은 어떠한 사이드 이펙트도 만들지 않아야 한다. Action > 상태의 변경을 나타내는 개념 주로 type, payload를 포함하는 JS객체의 형태. 액션 외의 다른 일은 일어나지 않으며, 큰 상태를 나타내기 보단 작은 상태를 잘게 쪼개(atomic) 최소한의 의미를 가지도록 만드는 것이 좋다. Action Creater > Action을 생성하는 함수 직접 Action을 생성하는 것보다 Action Creater를 활용하면 재사용성이 좋고 하나의 레이어
Redux-Toolkit > redux helper 라이브러리 redux-devtools, immerjs, redux-thunk, reselect 등의 라이브러리가 미리 포함됨 Redux-Toolkit 종류 >* configureStore createAction createReducer createSlice createSelector ✔️ configureStore > rudex의 createStore 함수를 래핑하며 named parameter로 쉽게 store를 생성 createStore를 할 때, 여러가지 reducer를 넘길 수 없고 함수 하나를 넘겨야 한다. 이때 state를 분할하여 보내고 싶을 경우 (ex. users, posts, comments...) 각각의 action을 처리하기 위해서는 별도의 reducer1, reducer2, reducer3...이 필요하다. 이러한 번거로운 과정을 하나의 reduce