본문 바로가기

모바일프로그래밍

하이브리드(Hybrid) 앱


모바일 네이티브 앱과 웹 앱  

모바일 기기(스마트폰 혹은 태블릿)에서 작동하는 앱의 종류는 크게 두가지로 나눌 수 있습니다. 모바일 기기의 내부에서 자체적으로 동작하는 네이티브 앱과 웹을 통해 동작하는 웹 앱입니다.
 
네이티브 앱이 성능면에서 웹 앱보다 뛰어나지만 모바일 OS마다 다른 언어를 이용해 프로그래밍 해야 한다는 단점이 있습니다. 이에 반해 웹 앱은 모든 모바일 OS에서 지원하는 HTML5, CSS, JavaScript로 개발하므로 어떠한 OS에서도 동작이 가능하다는 장점을 가집니다. 하지만 네이티브 앱보다 성능이 떨어지며 모바일 기기의 특정 하드웨어 기능들을 사용할 수 없다는 단점을 가집니다.


네이티브 앱웹 앱
장 점  구동속도가 빠름
 인터렉티브한 사용자 환경을 제공
 OS 및 기기별로 특정 어플의 개발이 가능
 네이티브 앱에 비해 개발 기간이 짧음
 웹개발 지식으로 개발이 가능
 업데이트 및 수정 변경이 용이
 어떤 OS라도 접근이 가능 
단 점  웹 앱에 비해 고비용, 개발기간이 길다
 웹 앱에 비해 업데이트 및 수정이 어려움
 OS에 따라 사용되는 프로그래밍 언어가 다름 
 인터넷을 통해 접속하므로 구동이 느림
 모바일 기기의 특정 기능 사용 못 함
 브라우저를 통한 2차 접근이라 접근성 낮음 
출처 :  밥사이다의 잡학발산




하이브리드 앱  

하이브리드 앱은 네이티브 앱과 웹 앱의 장점을 합친 형태의 앱입니다. 즉, 앱의 내부는 HTML5, CSS, JavaScript 코드로 만들고 이를 각각의 모바일 OS에서 실행되도록 패키징하는 방식입니다. 단순히 말해 네이티브 앱으로 겉을 감싼 웹 앱이라 할 수 있겠습니다. 한마디로 네이티브 앱 처럼 돌아가는 웹 앱인 셈입니다.

하이브리드 앱은 기본적으로 웹을 통해 동작하지만 가속도 센서, 카메라, 진동 등의 모바일 기기의 네이티브 기능을 사용하는 것이 가능합니다. 또한 웹브라우저에서 URL을 입력하므로써 작동하는 웹 앱과는 달리 네이티브 앱처럼 앱을 동작할 수 있어 사용자는 마치 네이티브 앱을 사용하는 것과 같은 접근성을 가질 수 있습니다.

하이브리드 앱 개발에 사용되는 모바일웹 개발 프레임워크로는  Sencah Touch, jQTouch, jQuery Mobile 등이 있으며, 하이브리드 앱 개발 프레임워크로는 PhoneGap, Appspresso, Accelerator Titanium이 있습니다.

기존에 나와있는 대표적인 하이브리드 앱으로는 네이버앱, 다음앱, 멜론앱 등이 있습니다. 웹서비스들의 모바일 앱들은 대체적으로 하이브리드 앱 형태로 만드는 것 같네요. 하이브리드 앱이라는 것을 몰랐을때는 안드로이드 폰에서 이 앱들을 이용하면서 어떻게 UI를 구성했는지 궁금해했었는데 이제보니 안드로이드 코드로 작성된게 아니었었다는..^^;;

안드로이드 네이버 앱


안드로이드 멜론 앱




참고 : 밥사이다의 잡학발산