Recent Posts
«   2025/05   »
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 31
관리 메뉴

개발자 박가나

[241226 TIL] 본캠프 61일차 (PWA) 본문

내일배움캠프

[241226 TIL] 본캠프 61일차 (PWA)

gnchoco97 2024. 12. 27. 10:37

PWA (Progressive Web Applications)

앱 설치 부담을 줄이고 웹의 보편성을 활용하려는 취지로 시작되었다.

 

사용자들이 앱 설치를 꺼리는 문제를 해결하기 위해서 등장한 기술로, 기존 모바일 웹과 네이티브 앱의 단점을 극복하기 위한 솔루션이다.

 

쉽게 말해서 웹 사이트와 네이티브 모바일 앱의 장점을 결합한 것으로, 웹 앱이지만 마치 모바일 앱처럼 동작한다.

 

모든 브라우저에서 동작하고, 설치가 필요없는 웹 앱처럼 동작하며, 네이티브 앱의 경험을 제공한다.

 

사용되는 상황

  • 모바일 웹사이트의 사용자 경험을 개선하고 싶을 때
  • 별도의 앱 설치 없이도 앱과 같은 기능을 제공해야 할 때
  • 네트워크 상태가 불안정한 환경에서 동작해야 할 때
  • 앱스토어에 앱을 등록하지 않고 빠르게 서비스를 제공하고 싶을 때

 

핵심 기술

  • Web App Manifest
    • 앱 이름, 아이콘, 색상, 시작 URL 등 메타 데이터 정의
    • 사용자가 홈 화면에 추가했을 때 앱처럼 보여지게 하는 역할
  • Service Worker
    • 브라우저 백그라운드에서 실행되는 스크립트
    • 캐싱, 오프라인 지원, 푸시 알림 등의 기능 제공
  •  HTTPS
    • 보안을 위해 HTTPS 환경에서만 동작
    • 사용자 데이터를 안전하게 보호하고 신뢰 제공

 

장점

  • 별도의 설치 없이 앱 경험 제공
  • 빠른 로딩 속도
  • 푸시 알림 지원
  • 네이티브 앱 개발 비용 절감
  • 개발 관점에서의 이점

 

단점

  • 제한된 네이티브 기능
  • iOS에서의 제한
  • 사용자 경험의 혼동
  • 브라우저별 지원 차이