STATE
컴포넌트 내부적을 사용하는 데이터의 집합. state는 어떤 event나 API등을 통해 setState 메서드를 사용하여 바뀔 수 있는 것을 배웠다. 그리고 앱은 state를 읽어와서 화면에 그에 맞는 UI를 출력하게 된다.
STORE
Store는 state의 관리를 하는 전용 장소로,
state들이 store에 객체형식으로 저장된다. 규모가 클 경우에는 state를 카테고리별로 분류하는 경우가 일반적이라고 한다.
- createStore(reducer)로 Redux store를 생성할 수 있다.
- getState()를 통해 현재 state를 가져올 수 있다.
- dispatch(action)을 사용하여, store의 reducer에 action을 전달한다. redux에서 상태 변경을 일으킬 수 있는 유일한 방법이다.
REDUCER
리듀서는 두가지의 파라미터를 받아 변화를 일으키는 함수. 간단히만 말하자면 Store에 대해 뭔가를 하고싶거나 store의 state를 업데이트하고 싶을 때 발생하는 이벤트 드리븐같은 것. 이 Action은 Reducer로 전달된다.Action을 전달받는 Reducer는 각 Action이 Store를 어떻게 업데이트할지를 기술하는 순수함수.
DISPATCH
디스패치는 스토어의 내장함수 중 하나. state 변경을 해주는 액션을 스토어까지 가져와주는 스토어 관리자(Dispatcher)가 스토어의 상태 변경을 관리
SUBSCRIBE
구독 또한 스토어의 내장함수 중 하나. subscribe 함수는, 함수 형태의 값을 파라미터로 받아 subscribe 함수에 특정 함수를 전달해주고 액션이 디스패치 되었을 때 마다 전달해준 함수가 호출.
ACTION
Action은 상태 변경을 일으키는 이벤트에 대한 정적인 정보이다. Reducer가 Action과 이전 state을 참고해서 새로운 state를 만들기 때문에 Action은 reducer가 구분 할 수 있도록 액션의 이름(타입) 과 데이터를 가진 객체형식이다.