본문 바로가기

CS/공통

네이티브 앱 vs 웹앱 vs 하이브리드 앱 vs PWA

반응형

네이티브 앱 (NativeApp)

네이티브 앱은 특정 플랫폼 (Android, iOS) 에 최적화된 프로그래밍 언어와 도구를 사용하여 개발된 애플리케이션이다.

플랫폼의 특성과 하드웨어를 직접적으로 활용할 수 있다.

 

예를 들면, iOS 앱은 Swift, Object-C 로 개발되고 Android 앱은 Java, Kotlin으로 개발된다.

 

장점

  • 플랫폼에 최적화되어 성능과 안정성이 뛰어나다.
  • 모든 하드웨어 및 소프트웨어 기능에 접근 가능하여 다양한 기능을 구현할 수 있다.
  • 네이티브 UI 컴포넌트를 사용하여 뛰어난 사용자 경험을 제공한다.

단점

  • 플랫폼 마다 별도로 개발해야 하기 때문에 개발 비용과 시간이 많이 소요될 수 있다.

웹 앱 (Web App)

웹 앱은 웹 기술 (HTML, CSS, JavaScript) 을 사용하여 개발되어 웹 브라우저에서 실행되는 애플리케이션이다.

웹 앱은 사용자가 인터넷에 연결된 모든 기기에서 접근할 수 있다.

 

장점

  • 플랫폼 상관없이 모든 기기에서 동작한다.
  • 앱 스토어를 거치지 않고 웹 서버에 호스팅하여 배포가 간단하다.
  • 변경사항을 즉시 반영하여 사용자가 최신 버전을 사용할 수 있다.

단점

  • 네이티브 앱에 비해 성능이 떨어질 수 있다.
  • 오프라인에서 사용할 수 있는 기능에 대해서는 제한이 있을 수 있다.

하이브리드 앱 (Hybrid App)

하이브리드 앱은 웹 기술(HTML, CSS, JavaScript) 을 사용하여 개발하고 네이티브 컨테이너 안에서 실행되는 애플리케이션이다.

웹 기술로 개발된 앱을 네이티브 앱과 유사한 환경에서 실행할 수 있게 한다.

 

장점

  • 네이티브 앱과 동일하게 하드웨어 기능(카메라, 지도) 에 접근하여 사용할 수 있다.
  • 다양한 플랫폼에 배포할 수 있다.
  • 네이티브 앱과 웹 앱의 장점을 모두 활용할 수 있다.

단점

  • 성능이 웹 앱에 비해 떨어질 수 있다.
  • 네이티브 앱에 비해 접근할 수 있는 기능이 제한될 수 있다

PWA (Progressive Web App)

PWA는 웹 앱의 기능을 확장하여 네이티브 앱과 유사한 경험을 제공하는 웹 애플리케이션입니다. 최신 웹 기술과 특정 기능을 통해 프로그레시브한 사용자 경험을 제공합니다.

 

장점

  • 기능이나 성능 면에서 점진적으로 향상
  • 오프라인에서도 동작
  • 앱 스토어를 통하지 않고 웹에서 바로 설치 가능

단점

  • 일부 네이티브 기능에 접근 제한
  • 모든 브라우저에서 완벽한 지원이 이루어지지 않을 수 있다.

 

PWA는 웹 기술을 기반으로 하며 웹에서 직접 설치할 수 있다. 

하이브리드 앱은 웹 기술을 사용하여 개발되지만, 네이티브 컨테이너에서 실행되며 네이티브 기능에 접근할 수 있고 앱 스토어를 통해 배포된다.

 

 

반응형

'CS > 공통' 카테고리의 다른 글

개발 방법론 정리  (2) 2024.03.15
동기와 비동기, 블로킹과 논블로킹 정리  (1) 2024.03.15