App Router는 app/page.tsx, layout.tsx, route.ts와 서버 컴포넌트를 기본으로 삼고, Pages Router는 pages, _app, getServerSideProps, pages/api 같은 기존 규칙을 유지합니다.
pages/about.tsx가 /about이 되고, SSR/SSG는 getServerSideProps와 getStaticProps로 분리합니다.
app/dashboard/page.tsx가 공개 라우트이고, layout.tsx, loading.tsx, error.tsx로 segment 단위 UI를 나눕니다.
app과 pages는 함께 둘 수 있지만 같은 URL을 동시에 소유하면 충돌합니다. 이동 단위를 경로별로 끊습니다.
App Router에서 useState, window, 이벤트 핸들러가 필요하면 해당 파일에 'use client' 경계를 둡니다.