티스토리 뷰

✔ SPA란?

SPA는 "Single Page Application"의 약어로, 단일 페이지 애플리케이션을 의미한다.

 

이것은 웹 애플리케이션의 디자인 패턴 중 하나로, 전체 웹 애플리케이션을 단일 HTML 페이지로 구성하고, 페이지 간 전환 시에 페이지 전체를 다시 로드하는 대신 필요한 부분만 동적으로 업데이트하는 방식을 채택한다.

 

기존의 멀티페이지 애플리케이션(MPA)과 대조적이다.


⭐ SPA의 특징과 장점 

1. 빠른 사용자 경험 : 페이지 간 전환 시에 새로운 페이지를 불러오지 않고 필요한 데이터만 받아와 렌더링하므로 빠른 응답 속도를 제공한다.

2. 더 나은 상호작용 : 사용자와의 상호작용이 부드럽고 연속적이며, 페이지 새로고침이나 로딩 시간이 없어 사용자 경험(UX)이 향상된다.

3. 서버 통신 최적화 : 필요한 데이터만 서버로부터 비동기적으로 요청하므로 대역폭과 서버 부하를 줄일 수 있다.

4. 코드 분할 (Code Splitting) : SPA는 기본적으로 모든 코드를 한 번에 로드하지 않고 필요한 코드만 로드하므로 초기 로딩 속도를 향상시킬 수 있다.

5. 풍부한 사용자 경험(UX) : SPA는 애니메이션 및 트랜지션 효과를 쉽게 적용할 수 있어, 애플리케이션의 인터페이스를 풍부하게 디자인할 수 있다.

 

⚡ SPA의 단점 

1. 검색 엔진 최적화 (SEO) 어려움 : SPA는 초기 로딩 시에 모든 컨텐츠를 동적으로 렌더링하기 때문에, 검색 엔진 최적화에 어려움이 있을 수 있다. 이러한 문제를 해결하기 위해 서버 사이드 렌더링(SSR)을 적용할 수 있다.

2. 크기가 큰 애플리케이션 : 큰 규모의 SPA는 초기 로딩 속도와 메모리 사용량 측면에서 문제가 될 수 있다.

3. 브라우저 히스토리 관리 : SPA에서 브라우저의 뒤로 가기, 앞으로 가기 기능을 관리하기 위해 추가 작업이 필요하다.

4. 보안 측면 고려 : SPA는 클라이언트 측에서 렌더링되기 때문에 보안에 민감한 데이터에 대한 보호를 위해 추가적인 조치가 필요하다.

 

🌟 SPA 프레임워크와 라이브러리 

- React : Facebook에서 개발한 JavaScript 라이브러리로, 컴포넌트 기반의 SPA 개발을 쉽게 할 수 있다.


- Angular : Google에서 개발한 프레임워크로, 빠른 개발과 강력한 기능을 제공한다.


- Vue.js : 가벼운 프레임워크로, 간단한 프로젝트부터 복잡한 SPA까지 다양한 규모의 애플리케이션을 개발할 수 있다.




'프론트엔드' 카테고리의 다른 글

[FE] 이미지로더(Image loader) 캐시 전략  (0) 2023.10.08
[FE] 캐싱  (0) 2023.10.08
[FE] 브라우저 저장소(Local/Session Storage)  (0) 2023.09.30
SSR과 CSR에 대해  (0) 2023.08.31
동기와 비동기 통신 (axios)  (0) 2023.08.28
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
글 보관함