PWA(progressive web app)

wonyoung·2024년 8월 12일

Find out

목록 보기
9/9

PWA (Progressive Web App)란?

PWA(Progressive Web App)는 웹 애플리케이션을 마치 네이티브 앱처럼 사용할 수 있게 하는 기술입니다. PWA는 웹 기술(HTML, CSS, JavaScript)로 개발되며, 웹 애플리케이션의 장점과 네이티브 앱의 사용자 경험을 결합하여 사용자가 웹 애플리케이션을 설치할 수 있게 하며, 오프라인에서도 사용할 수 있는 기능을 제공합니다.

PWA의 주요 특징

  • Progressive: 모든 브라우저에서 동작하며, 최신 기능을 사용할 수 있는 브라우저에서는 더 나은 경험을 제공.
  • Responsive: 다양한 화면 크기와 해상도에서 잘 작동하도록 설계.
  • Offline 기능: 서비스 워커(Service Worker)를 통해 네트워크 연결이 없는 상태에서도 동작 가능.
  • App-like: 사용자가 웹사이트를 네이티브 앱처럼 사용할 수 있도록 앱의 UX를 모방.
  • Installable: 사용자가 웹사이트를 설치하여 홈 화면에서 바로 접근 가능.
  • Fresh: 항상 최신 상태를 유지, 자동으로 업데이트 가능.
  • Secure: HTTPS를 통해 제공되므로, 보안이 강화됨.

PWA와 네이티브 앱의 차이점

개발 방식:

  • PWA: 웹 기술(HTML, CSS, JavaScript)을 사용하여 개발. 하나의 코드베이스로 여러 플랫폼에서 작동.

  • 네이티브 앱: 각 플랫폼(예: iOS, Android)에 맞는 프로그래밍 언어(Swift, Kotlin 등)로 개발. 각 플랫폼별로 별도의 코드베이스 필요.

배포 및 설치:

  • PWA: 웹 브라우저를 통해 사용자가 앱을 설치할 수 있으며, 앱 스토어를 거치지 않음.
  • 네이티브 앱: 앱 스토어(Apple App Store, Google Play Store)에서 배포 및 설치.

성능:

  • PWA: 웹 기술을 사용하므로 네이티브 앱에 비해 성능이 다소 떨어질 수 있음.
  • 네이티브 앱: 플랫폼에 최적화되어 있으며, 하드웨어 접근이 용이해 성능이 뛰어남.

오프라인 지원:

PWA: 서비스 워커를 통해 오프라인에서도 일부 기능을 사용할 수 있음.
네이티브 앱: 오프라인에서도 대부분의 기능을 완전하게 사용할 수 있음.

기기 기능 접근:

PWA: 일부 기기 기능(카메라, 위치 정보, 알림 등)에 접근할 수 있으나, 제한적임.
네이티브 앱: 기기의 모든 기능(블루투스, NFC, 파일 시스템 등)에 접근 가능.

업데이트:

PWA: 사용자가 별도의 업데이트 없이 최신 버전을 자동으로 사용할 수 있음.
네이티브 앱: 앱 스토어를 통해 사용자가 수동으로 업데이트해야 함.

PWA의 장점

Cross-platform: 하나의 코드베이스로 모든 플랫폼에서 작동.
즉각적 사용 가능: 설치가 필요 없으며, 브라우저에서 바로 사용할 수 있음.
저비용 개발: 별도의 플랫폼별 개발이 필요 없으므로 개발 비용이 적게 듦.
자동 업데이트: 사용자가 항상 최신 버전을 사용하게 됨.
설치 용이: 앱 스토어 없이도 간편하게 설치 가능.
오프라인 사용 가능: 네트워크 연결이 없어도 일정 부분 동작 가능.

PWA의 단점

성능: 네이티브 앱에 비해 성능이 떨어질 수 있음.
기능 제한: 네이티브 앱에서 가능한 모든 기기 기능을 사용할 수 없음.
앱 스토어 검색 노출 부족: 앱 스토어에서 노출되지 않으므로, 사용자에게 도달하기 어려움.
호환성 문제: 모든 브라우저에서 완벽하게 동작하지 않을 수 있음.
UX/UI 제한: 네이티브 앱에 비해 사용자 경험에서 제한이 있을 수 있음.

네이티브 앱의 장점

  1. 성능: 하드웨어에 최적화되어 있어 높은 성능을 제공.
  2. 기능 접근성: 기기의 모든 기능을 자유롭게 사용할 수 있음.
  3. 풍부한 사용자 경험: 더 나은 UX/UI를 제공할 수 있음.
  4. 앱 스토어 노출: 앱 스토어에서 검색 및 추천을 통해 사용자를 확보할 수 있음.

네이티브 앱의 단점

  1. 고비용 개발: 각 플랫폼별로 별도의 개발이 필요하여 비용이 높음.
  2. 업데이트 불편: 사용자가 수동으로 업데이트를 해야 함.
  3. 플랫폼 의존성: 특정 플랫폼에 종속되며, 다른 플랫폼에서 동작하지 않음.
  4. 배포 제약: 앱 스토어의 규정을 따라야 하며, 승인 과정이 필요함.

PWA와 네이티브 앱은 각각의 강점과 약점을 가지고 있습니다. PWA는 크로스 플랫폼에서 사용 가능하고, 개발 비용이 낮으며, 즉각적인 사용과 설치가 가능하지만, 성능과 기능 면에서 네이티브 앱에 비해 제한적입니다. 네이티브 앱은 높은 성능과 풍부한 사용자 경험을 제공하지만, 개발과 유지 비용이 높고, 플랫폼에 종속적이라는 단점이 있습니다.

PWA는 웹 기반 애플리케이션을 보다 사용자 친화적이고, 앱과 같은 경험을 제공하려는 시도이며, 특정 상황에서는 네이티브 앱을 대체할 수 있는 좋은 선택이 될 수 있습니다. 하지만, 특정 애플리케이션이 고성능이나 특정 하드웨어 기능을 필요로 한다면, 네이티브 앱이 더 적합할 수 있습니다.

profile
😀😀😀😀😀😀😀😀😀😀😀😀😀😀😀😀😀😀😀😀

0개의 댓글