레이아웃을 여러 겹으로 나눌수록 어디에 둘지가 설계 품질을 결정한다
공유 UI, 데이터, provider, 상태가 어느 URL 범위에서 유지되어야 하는지에 따라 파일 위치가 달라진다.
| 질문 | 예라면 | 둘 위치 | 검증 기준 |
|---|---|---|---|
| 여러 하위 페이지가 같은 UI를 쓰는가 | 대시보드 메뉴 | dashboard/layout.tsx | 하위 이동 때 메뉴가 유지됨 |
| 특정 하위 섹션에서만 쓰는가 | profile 메뉴 | dashboard/profile/layout.tsx | 다른 dashboard 페이지에는 나타나지 않음 |
| 데이터가 모든 하위 페이지에 필요하지만 직접 전달하지 않아도 되는가 | 사용자 기본 정보 | 상위 layout fetch | fetch 캐시 재사용 가능 |
| 상호작용 상태가 필요한가 | 접힘 사이드바 | Client Component wrapper | layout 전체에 use client를 붙이지 않음 |
| 페이지마다 달라지는 본문인가 | 프로필 홈/편집/보안 | 각 page.tsx | layout children 자리만 교체됨 |