본문 바로가기

PWA(Progressive Web Application)란?

PWA(Progressive Web Application)란?

PWA는 한 마디로, 웹 기술 만으로 앱과 같은 기능을 갖춘 웹앱이다. 

 

비교

 

모바일

  • PC 웹 페이지를 모바일에 맞게 줄인 것  
    • 웹 개발 
    • 풀 브라우저 방식 (화면 일부분이 변경될 때 화면 전체 내용을 서버에서 새로 받아옴)
  • 웹 브라우저에서 검색 혹은 URL로 접근해야 하는 불편함

 

네이티브  

  • 우리가 일반적으로 알고있는 앱 
    • 앱 개발 : 운영체제에 따른 각 네이티브 언어(개발언어)로 개발 
    • 네이티브 API 사용 가능
    • 높은 퍼포먼스
  • 업데이트할 때마다 플레이스토어~앱스토어를 통해야 함 (+심사과정)

 

 : 

  • 모바일에 최적화된 웹 
    • 웹 개발
    • 구동 방식이 마치 네이티브와 같음
    • SPA (최초 한 번 페이지 전체를 받아온 후, 화면 일부분이 변경될 때 해당 부분만 데이터를 바인딩)
  • 웹 브라우저에서 검색 혹은 URL로 접근해야 하는 불편함

 

하이브리드

  • 웹 앱과 네이티브 앱의 기능을 결합하여 개발된 (ex. 네이버 앱)
    • 외부는 앱개발 / 내부는 웹개발
    • 네이티브 API와 브라우저 API를 이용해 다양한 개발 가능 
  • 업데이트할 때마다 플레이스토어~앱스토어를 통해야 함 (+심사과정)

 

프로그레시브 (PWA): 

  • 웹 앱을 하이브리드 앱처럼 최대한 비슷하게 만들어줌
    • 웹 개발
    • 화면은 하이브리드 같음
    • 네이티브 API와 브라우저 API를 이용해 다양한 개발 가능
  • 웹 브라우저에서 검색 혹은 URL 또는 플레이스토어~앱스토어 둘다 가능 (단 ios 제외)
    • 관련하여 아래 자세한 내용 참고

 

장점

 

웹 장점

  1. 검색 엔진을 통해 검색이 가능(SEO)하며 이를 통한 사용자 유입

 

앱 장점

  1. 데스크톱이나 모바일 환경에 설치가 가능
  2. 오프라인, 저속도 환경에서도 동작  
    • Service Worker로 인해 앱 동작에 필요한 asset과 일부 API call들에 대한 캐싱 가능 
    • 캐싱된 리소스로 오프라인, 저속도 환경에서도 캐싱된 리소스로 안정적인 앱 사용 지원
  3. 백그라운드 동기화 
  4. 푸시 알림 
    • 네이티브 앱, 하이브리드(크로스 플랫폼 포함)의 장점
  5. 사용자 위치, 카메라, 진동, AR, VR 등 네이티브 앱과 같은 사용성 
  6. HTTPS 프로토콜을 통해 제공

 

 

단점

1. 일반 사용자에게 브라우저의 '홈 화면 추가' 기능을 통한 앱 설치를 유도해야 함.

  • PWA 개념에 익숙하지 않은 사용자에게 초기 접근성이 낮을 수 있다는 우려가 있음
  • 보통은 앱스토어에서 앱을 설치하는 것으로 알고 있기 때문 
  • 해결방안 ) 
    • 구글, Microsoft는 스토어에 PWA가 가능함
  • 남은 문제 )
    • Apple은 아직 이와 관련된 확실한 지원이 언급되지 않고 있음

2. 네이티브 앱이 가져다 주는 각 운영 체제 고유의 UI, 사용자 경험 제공에는 한계가 있음 

3. 게임 등 고사양 앱 개발은 힘듬

  • 2~3 문제가 중요한 경우에는 네이티브 앱 개발을 고려해봄직함.

 

다시 말해 PWA로 현재 관건은 다시 말해 아래와 같다. 

 

PWA로 개발해도 애플 앱스토어에 배포가 가능한가? 

 

 

PWABuilder 공식 문서 속 참조 
  • PWABuilder : PWA 배포 절차를 간소화하는, Microsoft에서 개발한 오픈 소스 도구 
  • 공식 문서를 들어가보면 아래와 같이 PWA 앱의 애플 앱 스토어 배포 여부를 보장할 수 없다는 문구가 들어 있다. 

 

 

참고

https://docs.pwabuilder.com/#/builder/app-store 

https://www.sepoasoft.co.kr/?p=7411

 

앱 개발 “PWA(Progressive Web Application)” 정의/요소/장단점/사례/트위터 예시 - Sepoasoft

모바일 앱의 종류와 PWA(Progressive Web Application) by 강주임 2022.10 안녕하세요, 전자구매 / 경비출장관리 / 전자계약 / 전자인장 솔루션 구축 및 클라우드 서비스 #세포아소프트 입니다:) 지난번 기술

www.sepoasoft.co.kr

https://okky.kr/questions/635661 

https://okky.kr/questions/1439215 

 

728x90
⬆︎