SPA MENTAL MODEL

SPA는 HTML을 다시 받는 대신 상태와 화면 일부를 바꿉니다.

처음에는 앱 셸을 받고, 이후에는 Fetch로 데이터만 가져오며 History API로 주소를 맞춥니다. 빠른 전환 대신 초기 로딩과 SEO 보완이 과제로 남습니다.

MPA이동마다 서버가 새 HTML을 응답
SPA한 페이지 안에서 데이터와 DOM만 갱신
보완SSR, SSG, 코드 스플리팅으로 약점 완화
Initial Load앱 셸과 번들 로드

첫 진입은 무거울 수 있어 번들 분리와 캐싱을 같이 설계합니다.

Fetch필요한 데이터만 요청

페이지 전체 대신 JSON API를 받아 화면 일부를 갱신합니다.

History새로고침 없이 URL 변경

뒤로가기와 공유 가능한 주소를 클라이언트 라우터가 관리합니다.

State화면 상태가 앱 안에 머묾

저장소, 토큰, 컴포넌트 상태가 UX와 메모리 관리를 좌우합니다.

검색 노출이 중요하면

CSR만 고집하지 말고 SSR/SSG가 필요한지 검토합니다.

화면 전환이 많으면

SPA의 부드러운 라우팅과 상태 유지가 큰 장점이 됩니다.

보안은 클라이언트에 맡기지 않기

인가와 민감 로직은 서버에서 최종 검증해야 합니다.