Computer Science/Web

[Web] 네이티브 앱 & 웹 앱 & 하이브리드 앱

dbssk 2023. 9. 7. 18:14

네이티브 앱(Native App)

네이티브 앱은 각 모바일 운영체제(Android 및 iOS)에 최적화된 방식으로 개발된다. 안드로이드 앱을 Java 또는 Kotlin으로, iOS 앱은 Swift 또는 Objective-C로 개발된다.

장점

  • 구동 속도가 빠르고 안정적이다.
  • 기기의 모든 기능(카메라, GPS 등)에 쉽게 접근할 수 있다.
  • 높은 그래픽 품질과 사용자 정의 디자인을 구현할 수 있다.

단점

  • 두 가지 운영체제용 앱을 별도로 개발해야 하기 때문에 개발 비용과 시간이 많이 들 수 있다.
  • 앱 업데이트시 앱 스토어의 심사를 거쳐야 한다.

 

모바일 웹 앱(Mobile Web App)

모바일 웹 앱은 HTML, CSS, JavaScript를 사용하여 웹 기술로 개발된다. 웹 브라우저를 통해 접근하므로 앱을 설치할 필요가 없으며 주소창이 있다.

장점

  • 별도의 앱 설치가 필요 없다.
  • 상대적으로 비용이 저렴하고 개발 기간이 짧다.
  • 수정이 필요한 경우 앱 스토어 심사를 거치지 않아도 된다.

단점

  • 기기의 하드웨어 자원에 직접 액세스할 수 없으므로 일부 기능(카메라, GPS 등)을 사용할 수 없을 수 있다.
  • 브라우저를 통해 실행되기 때문에 구동 속도가 네이티브 앱에 비해 느리고 안정성이 떨어질 수 있다.
  • 네이티브 앱보다 디자인 자유도가 낮을 수 있다.

 

하이브리드 앱(Hybrid App)

하이브리드 앱은 네이티브 앱과 모바일 웹 앱의 혼합 형태이다. 앱 콘텐츠 영역은 모바일 웹 기술로 작성되지만, 앱 패키지는 네이티브 방식으로 만들어진다.

장점

  • 웹과 앱의 API를 모두 활용하여 디바이스 자원에 접근할 수 있다.
  • 네이티브 앱에 비해 개발 비용과 시간을 절약할 수 있다.
  • 네이티브 앱으로 패키징 되어있기 때문에 한 번의 하이브리드 앱 개발로 여러 플랫폼에서 사용할 수 있다.

단점

  • 네이티브 앱 개발에 대한 지식이 필요하다.
  • 앱의 콘텐츠 영역이 모바일 웹 기술로 작성되기 때문에 브라우저의 성능이 떨어지면 앱 구동 속도가 느려질 수 있다.
  • 네이티브 앱보다 디자인 자유도가 낮을 수 있다.

 

선택 기준

  • 네이티브 앱 : 그래픽이 중요할 때 & 성능이 중요할 때
  • 모바일 웹 앱 : 저렴한 비용과 빠른 개발이 필요하며, 여러 플랫폼에서 동작해야 할 때, 수정사항을 빠르게 반영해야 할 때
  • 하이브리드 앱 : 네이티브 앱의 성능을 유지하면서도 코드의 일부를 재사용하고자 할 때, 다양한 플랫폼에 대응해야 할 때, 업데이트가 자주 일어날 때 

 

[참고] https://gyoogle.dev/blog/web-knowledge/%EB%84%A4%EC%9D%B4%ED%8B%B0%EB%B8%8C%20%EC%95%B1%20&%20%EC%9B%B9%20%EC%95%B1%20&%20%ED%95%98%EC%9D%B4%EB%B8%8C%EB%A6%AC%EB%93%9C%20%EC%95%B1.html

https://www.telerik.com/blogs/hybrid-or-native-mobile-app-use-the-right-tool-for-the-job