Nested responsibility

중첩 라우트는 책임을 레벨별로 나누면 선명해진다

전체 앱, 대시보드 구간, 개별 페이지가 맡는 UI와 데이터를 구분하면 상태 유지와 리렌더링 범위를 예측하기 쉽습니다.

root

app/layout.tsx

서비스 전체의 껍데기와 전역 설정을 맡습니다.

전역 헤더와 푸터

모든 route에서 반복됩니다.

전역 provider

앱 전체 상태의 바깥 경계입니다.

segment

dashboard/layout.tsx

대시보드 하위 화면에서 공유하는 구조와 상태를 유지합니다.

사이드바와 탭

하위 route 이동에도 남습니다.

공통 필터

구간 안에서 재사용됩니다.

leaf

page.tsx

현재 URL의 실제 콘텐츠와 화면 전용 데이터를 렌더링합니다.

개별 콘텐츠

overview, analytics처럼 바뀝니다.

페이지 전용 fetch

해당 화면에서만 필요합니다.