state 값 가져오기 : getState()함수를 통해서 state 값을 가져오고, render 함수를 호출하여 UI를 생성합니다.
state값의 변경 : state값이 변경되면 action을 통해 dispatch에 전달되고 dispatch는 reducer에 action과 payload를 전달하여 state 값을 변경합니다. 이 때, 구독되어있는 상태값이 변경될 경우 state 값 가져오기와 render 함수를 재실행합니다.
리덕스의 장점
상태를 중앙관리하여 컴포넌트 간의 의존성을 낮추고, 애플리케이션을 단순하게 만들어줌
상태 버전 관리를 통해서 시간마다 상태의 변화를 관찰할 수 있음. (디버깅을 쉽게 만들어)