State Strategy

상태 관리 도구 선택

Context API, TanStack Query, Zustand, Jotai, Redux Toolkit을 App Router의 서버 중심 구조와 함께 비교합니다.

Context

가벼운 공유

테마, 언어, 로그인 표시처럼 빈번한 복잡 업데이트가 적은 값에 적합합니다.

TanStack Query

서버 상태 관리

API 캐시, 재시도, 백그라운드 갱신이 필요한 화면에 유리합니다.

Zustand Redux

클라이언트 상태

여러 컴포넌트가 자주 바꾸는 UI 상태나 복잡한 규칙을 저장소로 분리합니다.

서버·UI 상태 분리

서버 데이터인지 클라이언트 UI 상태인지 먼저 나눈다

외부 API에서 온 데이터와 브라우저 안에서만 의미 있는 상태를 같은 도구로 처리하면 캐시와 업데이트 규칙이 섞입니다.

도구 기준

작은 공유Context로 충분한지 먼저 확인합니다.
서버 캐시요청 중복, 재검증, 에러 처리가 중요하면 Query를 검토합니다.
복잡 상태상호작용 규칙이 많고 여러 곳에서 바꾸면 Store를 둡니다.