use client는 필요한 가장 작은 실행 경계에 둔다

state·event·browser API가 있는지 확인하고 서버 대안이 없을 때만 선언한다.

브라우저 실행이 정말 필요한가?state → browser API → 서버 대안 순으로 확인
표시만

서버 유지

데이터 조회와 정적 UI는 브라우저 실행 불필요

로컬 상태

Client leaf

버튼·폼·탭 파일에만 지시어 선언

window API

Client boundary

브라우저 전용 기능을 작은 영역에 격리

상위 선언

경계 재분할

하위 import 전체가 번들되는지 확인

핵심상위 컴포넌트의 선언을 줄일수록 데이터 조회는 서버에 남고 브라우저 JavaScript는 작아진다.