모바일 서비스의 4가지 대표 개발 방식에는

네이티브 앱(Native App), 하이브리드 앱(Hybrid App), 웹 앱(Web App), 모바일 웹(Mobile Web)이 있다.

각각의 특징 및 장단점에 대해 알아보자.

 

네이티브 앱(Native App) : 모바일 기기에 최적화된 네이티브 언어로 개발된 앱(App)

특징 : 개발 - 해당 운영체제에 최적화되어 있는 개발 도구로 제작

          실행 - 구글 플레이스토어, 앱스토어에서 다운 설치

          안드로이드 SDK - Kotlin / Java

          IOS SDK - Swift / Objective C

장점 : 높은 퍼포먼스, 더 많은 디바이스 접근 권한, 빠른 속도와 안정성

단점 : 각 운영체제마다 개발 및 유지 보수 필요 -> 운영체제별 개발 인력 필요

          높은 개발 & 운영 비용, 심사과정 필요, 업데이트할 때마다 플레이스토어, 앱스토어를 통해야 함

(고성능의 그래픽 처리가 가능해서  2D 및 3D 게임이나 증강현실과 같은 앱 개발을 할 수 있음, 모바일의 고유 정보 이용 & 하드웨어 제어 가능)

 

하이브리드 앱(Hybrid App) : 웹 앱과 네이티브 앱의 기능을 결합하여 개발된 앱(App)으로 하나의 코드 베이스로

IOS, Android에서 모두 작동

특징 : 개발 - 모바일 웹 앱을 모바일 운영체제로 패키징(내부는 모바일 웹 앱 / 외부는 네이티브 모습)

          실행 - 구글 플레이스토어, 앱스토어에서 다운 설치

          웹 브라우저로 접속한 것과 차이 없음 But QR 코드 리더, 음성 인식 등 지원

장점 : 네이티브 API와 브라우저 API를 이용해 다양한 개발 가능

          개발 비용 & 시간 절감(네이티브 앱에 비해), 쉬운 유지 보수(네이티브 앱에 비해)

          모바일 웹보다 빠른 속도, 디바이스 고유 정보 접근 가능

단점 : 제한적 기능, 네이티브 앱보다 느린 속도, 네이티브 앱 개발 지식 필요, 심사과정 필요

          브라우저 성능에 따라 앱 성능에 영향

(웹 앱의 단점을 보완, 앱의 기반이 되는 콘텐츠 영역은 HTML 기반의 웹 앱으로 제작, 최종 앱 배포에 필요한 패키징 처리만 Android, IOS 플랫폼 안에서 처리, 모바일의 고유 정보 이용 & 하드웨어 제어 가능)

 

웹 앱(Web App) : 모바일 웹과 비슷하지만 구동 방식이 앱처럼 보이게 한 앱(App)

특징 : 개발 - 웹 개발 방식과 동일(HTML, CSS, JavaScript 등)

          실행 - 웹 브라우저(단일 페이지 방식)

          겉모습과 구동 방식이 마치 네이티브 같은 웹 페이지(모바일 웹보다 모바일 최적화)

장점 : 운영체제별로 개발할 필요가 없음 -> 비용 & 시간 절감, 심사과정 불필요

단점 : 디바이스 접근 권한 제한, 웹 브라우저에서 검색하거나 URL로 접근해야 함

(모바일 웹과 네이티브 앱을 결합한 것으로 모바일 웹의 특징을 가지면서 네이티브 앱의 일부 장점도 가짐, 모바일의 고유 정보 이용 불가 & 하드웨어 제어 불가)

 

모바일 웹(Mobile Web) : 모바일 화면에 맞게 구성한 웹(Web)

특징 : 개발 - 웹 개발 방식과 동일(HTML, CSS, JavaScript 등)

          실행 - 웹 브라우저(풀 브라우저 방식)

           PC 웹 페이지를 모바일에 맞게 줄인 모습

장점 : 운영체제별로 개발할 필요가 없음 -> 비용 & 시간 절감, 심사과정 불필요

단점 : 디바이스 접근 권한 제한, 웹 브라우저에서 검색하거나 URL로 접근해야 함

(데스크탑 브라우저에서 실행되는 웹 애플리케이션을 모바일 스크린 크기로 줄여 놓은 것, 모바일의 고유 정보 이용 불가 & 하드웨어 제어 불가)

 

모바일 웹과 웹 앱을 비교해 보면 둘은 웹 개발과 동일하게 만들어지기 때문에 모바일 운영체제별로 개발할

필요가 없기 때문에 시간과 비용 측면에서 효과적이다. 하지만 접속하기 위해선 브라우저를 이용해야 하므로

직접 검색하거나 URL로 접근해야 한다. 이처럼 더 많은 단계를 거치고, 직접 입력해야 하는 노력이 필요하다는 점에서

접근성이 좋지 않다는 단점이 있다.

 

모바일 웹과 웹 앱의 실행 방식 차이

 

모바일 웹(풀 브라우저 방식 Full Browsing) : 화면 일부분이 변경될 때 화면 전체 내용을 서버에서 새로 받아오는

방식으로 페이지 Reload를 할 경우 속도가 느리다는 단점이 있다. 또한 모바일 기기 특성상 이동 중에 서버 접속 장애가

발생할 위험이 있다.

 

웹 앱(단일 페이지 방식 SPA) : 브라우저에 최초 한 번 페이지 전체를 받아오고, 화면 일부분이 변경, 요청될 때

해당 부분만 Ajax를 통해 데이터를 바인딩 하는 방식이다.

 

모바일 웹은 풀 브라우저 방식으로 실행 속도가 느린 반면, 웹 앱은 단일 페이지 방식으로 실행 속도가 빠르다.

점차 모바일 환경이 발달하면서 PC 기반으로 개발된 웹 페이지들이 모바일 환경으로 적응하게 되었고,

이 과정에서 모바일 최적화를 위한 다양한 방법들이 등장했다. 반응형과 적응형도 이 과정에서 등장했다.

한 개의 URL로 다양한 디바이스 사이즈에 맞게 변동하는 반응형 웹(Responsive Web)과 각 디바이스 별

템플릿을 만들어 접근한 디바이스에 따라 알맞은 템플릿을 제공하는 적응형 웹(Adaptive Web)이 대표적이다.

+ Recent posts