PMB 6기
[코드스테이츠 PMB 6기] 7-1 같은 앱이긴 한데 다르다? 네이티브앱vs웹앱vs하이브리드앱 비교해보기
nvor
2021. 8. 3. 20:43
다양한 언어와 툴의 발달로 초기 스마트폰 앱들이 만들어졌던 때에 비해 다양한 방법으로 앱을 개발할 수 있게 되었다. 종류로는 네이티브 앱, 모바일 웹앱, 하이브리드 앱이 있다. 각기 어떤 목적으로 쓰이는지 비교해 보자.


- Native App 네이티브 앱: 투입비용이 높고 호환성이 적지만 기기에 최적화된 고성능 앱을 만들 수 있다.
- 정의: 하드웨어 기기에서 함께 제공하는 개발 언어로 만들어진 앱. native하다는 것은 개발 환경~기기에 대해 native하다는 의미이다.
- 종류: 안드로이드-Java/Kotlin 등, iOS-Swift 등
- 장점
- Great Performance - 웹 앱, 하이브리드 앱보다 높은 성능, 속도
- High Device Accessibility - 해당 환경 내의 네이티브 API를 모두 활용 가능
- UI Consistency - 해당 환경 내의 UI와 같은 UI로 구현됨
- Easy Monetization - 해당 환경 내의 앱스토어에 바로 앱을 배포할 수 있고, 수익화가 가능
- 단점
- Highest Cost - 세가지 앱 중 가장 높은 개발 비용
- Low Code Usability - 개발 언어 호환되지 않고 독점적
- Mobile Web App 모바일 웹 앱: 스마트폰 기기의 네이티브 기능 활용은 어렵지만 적은 비용으로 만들어 자주 업데이트 할 수 있음
- 정의: 네이티브 앱 + 모바일 웹
- 장점
- Lowest Cost - 세가지 앱 중 가장 낮은 개발 비용
- High Code Usability - 웹 브라우저와 호환만 잘 되면 다른 이슈 없음
- Easy Usage - 웹사이트이기 때문에 따로 앱 설치할 필요 없음
- Easy Maintenance - 앱이 아니기 때문에 설치/승인과정이 없어 유지보수 쉬움
- 단점
- Volatile Performance - 인터넷 연결 및 브라우저의 상태에 따라 성능이 좌우
- Lowest Device Accessibility - 네이티브 API (카메라 등) 활용이 거의 불가
- Low Monetization - 앱스토어에 올리는 것은 쉬우나 수익화가 어려움
- Hybrid App 하이브리드 앱: 네이티브 앱과 웹 앱의 장점을 모아 만든 앱
- 정의: 외부는 네이티브 앱, 내부는 웹 앱. 네이티브 앱에 웹뷰를 띄움.
- 앱 프레임워크: React Native, Flutter 등
- 장점
- Low Cost - 세가지 앱 중 개발 비용이 낮은 편
- High API Usability - 네이티브 API, 브라우저 API 모두 활용 가능
- High Compatibility - 한번의 개발로 크로스 플랫폼에 배포 가능
- 단점
- Low Code Usability - 네이티브 앱의 면을 많이 활용하려면 결국 네이티브 개발언어를 해야 함