Code Splitting이란?
앱 코드 전체를 한 번에 보내지 않고 필요한 부분만 나눠 로드하는 최적화다.
방식
- 라우트 기반 — 페이지별 분할 (Next.js 기본)
- 컴포넌트 기반 —
React.lazy()+ Suspense - 동적 import —
import('./heavy').then(...)
효과
초기 JS 번들이 1MB → 100KB로 줄어들면 FCP·TTI가 극적으로 개선. Core Web Vitals의 LCP 점수에 직결.
하나의 거대 번들을 여러 청크로 쪼개 필요할 때만 로드하는 기법. 초기 로딩 속도 크게 개선.
앱 코드 전체를 한 번에 보내지 않고 필요한 부분만 나눠 로드하는 최적화다.
React.lazy() + Suspenseimport('./heavy').then(...)초기 JS 번들이 1MB → 100KB로 줄어들면 FCP·TTI가 극적으로 개선. Core Web Vitals의 LCP 점수에 직결.