Reducer Fit

reducer 상태 전환

값 하나를 바꾸는 일은 `useState`가 빠르지만, 액션에 따라 여러 필드가 함께 바뀌면 reducer로 규칙을 한곳에 모으는 편이 읽기 쉽습니다.

useState

단순 토글과 숫자 변경

열림 여부, 카운트처럼 변경 규칙이 짧으면 setter가 더 직관적입니다.

reducer

액션별 분기가 늘어난다

증가, 감소, 초기화, 값 더하기처럼 같은 상태에 여러 명령이 붙으면 `switch` 구조가 유리합니다.

이전 상태

이전 상태 의존성

여러 필드를 동시에 계산해야 하면 순수 함수 안에서 이전 상태를 기준으로 새 객체를 반환합니다.

테스트

UI 없이 규칙 검증

reducer는 입력 상태와 action만으로 결과를 확인할 수 있어 단위 테스트에 잘 맞습니다.

이벤트클릭, 입력
actiontype, payload
reducer새 상태
renderUI 갱신

읽는 포인트 reducer는 상태 저장소가 아니라 상태 전환 규칙입니다. Context와 결합할 때도 컴포넌트는 action을 보내고, 변경 규칙은 reducer가 책임집니다.