티스토리 뷰
IT/Mobile
네이티브앱(native App) vs 하이브리드앱(Hybrid App) vs 모바일웹앱 (Mobile WebApp)
zzang_yang 2021. 6. 30. 19:30반응형
▶네이티브 앱 (Native App)
Android 또는 iOS 같은 플랫폼만을 위해 만들어진 응용 프로그램을 네이티브 앱(Native App)이라고 한다.
Android 경우는 Kotlin 또는 Java로 앱을 만들 수 있고, iOS의 경우 Swift 또는 Objective C로 만들 수 있다. 덕분에 앱의 실행 속도가 빠르고 유용한 API의 지원도 받을 수 있다. 반면 다른 운영체제에서도 실행되기 위해서는 시간도 노력도 돈도 많이 드는 단점이 있다.
▶모바일웹 (Mobile Web)
데스트탑브라우저에서 실행되는 웹 어플리케이션을 모바일 스크린크기로 줄인것이다.
▶모바일 웹 앱 (Mobile WebApp)
모바일 웹의 장점과 네이티브의 장점을 결합. 웹 기술로 구현하는 앱을 통칭한다. 기본적으로 HTML, CSS, JS를 사용해 만들어진 애플리케이션이다. 따라서 브라우저 주소창이 존재한다. 하지만 네이티브앱처럼 동작하도록 주소창을 가릴수 있고, 모바일 기기에 아이콘을 위치시킬수 있어서 겉보기에 네이티브 앱처럼 보이게 할 수 있다.
▶하이브리드 앱 (Hybrid App)
네이티브 앱과 웹 앱의 기능을 결합한 것이라고 보면 된다.
JavaScript, HTML 및 CSS와 같이 잘 알려진 언어와 프레임 워크를 사용하여 다양한 플랫폼에서 사용할 수 있는 앱을 만들 수 있다. 유지 보수도 쉬우며(상대적) 기본 API 기능도 사용 가능하나 웹 기반되는 콘텐츠 코드를 베이스로 하기 때문에 안드로이드나 아이폰의 디바이스의 특정 기능을 사용하는 데 문제가 발생할 수도 있다.
네이티브 앱 (Native App) | 모바일 웹 앱 (Mobile WebApp) | 하이브리드 (Hybrid App) | |
내용 | Application의미. 안드로이드 SDK를 이용해 Java로 만드는 앱과 IOS기반으로 SDK 이용 Swift/Objective-C로 만드는 앱 |
WEB+APP 모바일웹 과 네이티브앱을 결합한 형태. 웹앱도 모바일웹 처럼 일반적인 웹기술로 개발되고 모바일 브라우저에서 실행되지만 풀 브라우저 방식이 아닌 단일 페이지 방식으로 화면을 진화해 속도가 빠름. |
' 네이티브앱 + 웹앱 '. 일반적으론 네이티브웹에 웹view를 띄워 웹앱을 실행 시키는 것이 보편적. 양쪽의 API 를 모두 사용. 앱의 기반되는 콘텐츠는 HTML기반 웹앱 제작. 최종 앱 배포에 필요한 패키징 처리만 안드로이드/아이폰 플랫폼 안에서 처리한 어플리케이션 |
장점 | 성능 가장좋음. Native API호출로 플랫폼과 밀착. |
웹사이트를 보는 것이기 때문에 따로 설치X 모든 기기와 브라우저에서 접근. 별도 설치 및 승인과정이 필요치 않아 유지보수가 용이. |
네이티브 API 와 브라우저 API 를 이용한 다양한 개발이 가능 웹개발 기술을 사용해 앱을 개발할 수있음 한번의 개발로 다수의 플랫폼에 대응 |
단점 | 플랫폼에 한정적. 언어에 제약적 |
플랫폼 API (카메라 등) 을 사용할 수 없고 오로지 , 브라우저 API만을 사용. 친화적인 터치 앱을 개발하기가 약간 번거로움.(까탈) 네이티브 , 하이브리드 앱보다 실행이 까다로움.(브라우저로 열어서 들어가야함) |
웹뷰에서 앱을 실행하는 경우이기 때문에 앱의 성능이 곧 브라우저의 성능. UI 프레임워크 도구를 사용하지 않는다면 개발자가 UI를 제작. |
반응형
'IT > Mobile' 카테고리의 다른 글
[AndroidStudio] Failed to apply plugin [id 'com.android.application'] 오류 (0) | 2022.07.27 |
---|---|
안드로이드 SDK 번호와 버전 정리 (0) | 2022.03.21 |
[Android Studio]aab(Android App Bundle)파일에서 apk 추출하기 (0) | 2021.11.30 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- aws공부
- NETFramework오류
- nomodulename
- 셀레니움오류
- NETFramework3.5
- 파이썬오류
- webdriver
- 프레임워크오류
- selenium
- 운영체제구성#스케줄링#큐#프로세스#쓰레드#태스터#OS구성
- Python
- 오블완
- 셀레니움
- 버그
- 닷넷프레임워크오류
- 윈도우오류
- 프레임워크3.5설치불가
- 파이썬
- 설치오류
- 엣지깔끔하게
- 정보보안
- seleniumerror
- 자격증공부
- 0x800F0950
- noudelnoutfounderror
- 크롬드라이버자동
- Error
- PythonSyntaxError
- 오류
- 티스토리챌린지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함