SundayApp의 모바일과 사람이야기

하이브리드앱의 개념 본문

IT

하이브리드앱의 개념

charonfly 2016. 7. 1. 10:22

하이브리드앱(Hybrid App)이란?

사전적 의미

일반적으로 하이브리드의 정의는 다음과 같다

원래 이질적인  요소가 서로 섞인 것으로 이종, 혼합, 혼성, 혼혈 이라는 의미를 지닌다. 휴대폰에 전화통화 기능과는 전혀 관련성이 없어 보이는 카메라, MP3 기능 등을 섞어 휴대폰의 가치를 올리는 것과 같은 이치다.


이중 하이브리드 자동차는 가장 익숙한 하이브리드 기술입니다. 두가지 이상의 동력, 가솔린엔진과 전기모터, 디젤엔진과 전기모터 등을 결합해 연비와 배기가스를 개선하고, 출력을 높인 자동차이다.


하이브리드 자동차의 구조

하이브리드앱 by Google

하이브리드앱을 검색하면 구글에서 가장 먼저 나오는 이미지이다. 한마디로 App의 장점과 Web의 장점을 합친 것이 하이브리드 앱이다.



Web과 App의 차이

일반적으로 스마트폰 사용자는 Web과 App의 차이를 모른다. 설치되면 App 아니면 Web으로 인식하는 경우가 많다.
요즘에는 대부분 모바일 페이지를 별도로 지원하거나 반응형으로 개발되어 있어, 모바일에서도 웹사이트를 최적의 화면으로 볼 수 있도록 제공한다. 그렇다면 왜 별도로 App을 만들어서 설치하게 하는가? 그 이유는 아래 그림과 같다.


물론 최근에는 react 등으로 하나의 언어로 개발해서 ios와 android를 모두 만드는 프레임워크가 존재한다. 그러나 결국 단말 최적의 개발을 위해서는 네이티브 개발이 동시로 이루어져야 한다.


결론적으로 하이브리드앱의 정의는 아래와 같다.


Web으로 개발하여  Web의 장점을 최대한 활영하고, H/W(GPS, 카메라, 진동. 각종 센서 등) 제어를 위해 Native API를 이용함으로써, 기업과 고객 입장에서 App의 가치를 향상시키는 것.


왜(Why) 하이브리드앱인가?

유지보수 용이

일반적으로 기업들의 마케팅이나 기획 의사결정이 굉장히 느리게 이루어진다. 하나의 이벤트를 실행할때도 오픈전까지 수정하고 보완을 반복한다. 그래서 결국 이벤트 당일에 App을 배포하는 경우가 생기게 된다. 그런데 여기서 문제가 있다. 아이폰의 경우 검수가 3일~일주일 걸릴경우가 있으며 안드로이드도 4시간의 시간이 지나야 검수가 완료된다. 그러면 이는 실시간 반영이 아니다.

대부분의 의사결정 권한자들은 이를 이해하지 못한다. "왜 우리가 검수하는 시간을 기다려야 되지? 우리가 테스트 다 했잔아!" 이런식의 반응이다. 그러려면 결국 마케팅이나 홍보 프로모션 페이지는 Web기반으로 개발할 수 밖에 없게 된다.

하나의 언어로 개발되어 다양한 플랫폼을 제공하는 하이브리드앱의 장점


비용절감?

나는 이 의견에 반대의견이지만 대부분의 회사들이 비용절감의 이유로 하이브리드앱을 선호한다. 모바일앱을 운영하려면 자체 인력을 구성하거나 SM 업체에 위탁해야 하는데, 자체 인력을 구성할 경우 Native 개발자 2명이 무조건 필요하다. ios개발자와 android 개발자이다. 그런데 하이브리드로 개발할 경우 web개발자 한명으로 충분하다.(물론 이론에 의하면...) 그런데 실제 운영을 해보면 그렇지 않다. android의 경우 단말마다 기본 webView가 모두 다르고, css3와 웹기술을 적용하면 모두 다르게 동작하는 경우가 있다. 

물론 간단한 리스트 & 디테일 앱을 개발할때 하이브리드앱은 매우 좋은 방법이다. 그러나 요즘 이렇게 단순한 앱이 있는가? 이경우 아예 앱을 만들지 않고 web사이트만 배포하는 경구가 많다. 

웹 기술의 비약적인 발전

웹 기술은 아래 그림과 같이 지속적으로 발전해 왔다.


History of Web


이러한 웹의 발전에 발맞춰 Web Front 프레임워크도 굉장히 발전했다. iphone이 발표되고 나서 모바일시장이 급부상함에 따라 web을 모바일에 맞춰서 보여줘야겠다는 시장의 압박이 있었고, jQuery mobile, sencha touch(센차터치) 등의 프레임워크들이 나오게 된다. Web을 App처럼 보여줄 수 있는 이러한 프레임워크들의 발전으로 인해 Native와 거의 비슷한 Web개발이 가능해 졌다. 


센차터치 사이트

https://www.sencha.com/products/touch/


jQuery mobile 사이트

https://jquerymobile.com/


Hybrid Framework


Native VS Hybrid

결론은 결국 Native이다. 비용과 시간이 넉넉하다면 모바일에서는 Native로 할것을 추천드리고 싶다.
앱의 복잡도가 커질 수록 하이브리드앱의 유지보수 비용이 커진다는 근거로 벤자민 샌도프스키(Benjamin Sandofsky)의 이론을 소개한다.



물론 요즘의 웹 기술은 더욱 발전해서 일반 사용자가 하이브리드앱과 네이티브앱을 구분하기 어려운 정도로 발전했다.

(나같은 경우는 리스트의 Press 상태 확인, 버튼의 Press시 버튼이 눌러지는가 버튼 주위의 배경이 눌러지는가로 하이브리드냐 아니냐를 판단한다.)

re그러나 Native기술도 계속 발전한다. 이제 Native는 단순 UI를 simple하고 이쁘게 표현하는 수준이 아니라 반응성(reactivity)와 애니메이션(animation)으로 더욱 발전했다. 물론 이또한 Web에서 바쁘게 따라가고 있지만, Native를 리드하는게 구글과 애플로 봐서는 더욱 강력해질 것이 분명하다.


사용자의 눈은 이미 높아져 있다. 더 빠른 속도와 좋은 퀄리티를 요구하고 있는 것이다. 그러나 현재 Hybrid는 고객의 입장이 아닌 기업의 입장에서만 고려되고 있다. 다른 서비스들과 속도 / 성능 경쟁에서 살아남기 위해 일단 Hybrid는 잊어버려야 하며, App의 목적과 복잡성을 충분히 고려한 뒤 적용해야 한다.


'IT' 카테고리의 다른 글

IT 용어에 대해서  (0) 2017.01.22
Comments