ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [ 서비스기획 ] 협업을 위한 IT지식 : 앱개발 방법론의 이해
    IT/서비스기획 2023. 6. 11. 23:01

    협업을 위한 IT지식 : 앱개발 방법론 

     

    " 도대체 앱과 웹의 차이는 무엇이며, 하이브리드 앱은 또 뭐람? 내가 이것까지 알아야 하나? "

     

    위와 같은 생각을 하신 분들이 있을 겁니다.

    개발 방법론은 개발자들에게만 국한된 문제라고 생각할 수도 있습니다.

    하지만, 실상 IT업계에서 개발자들과 함께 일하다보면 그들의 전문용어를 알아둘 필요가 있습니다.

    특히, 화면기획의 측면에서도 웹과 앱, 하이브리드 앱은 그 특유의 특징이 있기 때문에 서비스 기획자로서 해당 지식을 머리에 지니고 있냐 아니냐는 실질적으로 업무효율에 큰 영향을 미치므로 서비스 기획자, UI/UX 기획자, UI/UX 디자이너는 해당 지식들을 익히시는 것을 권유드립니다.

     

    네이티브 앱이란?

    네이티브 앱 예시 사진
    네이티브 앱 예시

    네이티브 앱은 모바일 기기(디바이스)에 최적화된 네이티브 언어(개발 언어)로 개발된 앱을 의미합니다. 

    왼쪽 사진은 우리가 주로 사용하는 네이버, 당근마켓과 같이 스토어앱을 통해 다운받아 사용하는 네이티브 앱이고, 오른쪽 사진은 스마트폰 초기화 시 디운없이 이미 플랫폼 안에 기본적으로 탑재된 네이티브 앱입니다. 

    네이티브 앱은 즉, 쉽게 말해서 우리가 스마트폰을 사용하면서 설치해서 사용해야 하는 앱이라고 생각하시면 쉬울 것 같습니다.

     

    사실 네이티브 앱은 호환성이 좋지 않기 때문에 플랫폼마다 따로 개발해야 한다는 불편함이 존재합니다.

    이에 따라 비용과 시간이 많이 든다는 큰 단점이 존재합니다.

     

    분명한 것은 이를 상쇄하는 장점이 있다는 것입니다.

    네이티브로 개발된 앱은 이후에 나올 웹 앱보다 빠르고 안정적이며, 다양한 맞춤형 UI/UX를 구현할 수 있습니다.

    또한, 플랫폼 종속적인 API를 사용할 수 있어, 카메라와의 연동, GPS 이용, 주소록과 생체인증 등 다양한 기능을 이용할 수 있습니다.

    [ 토막 지식 ]
    네이티브 앱에서 사용되는 개발언어는 시장에서  크게 2가지의 플랫폼에 종속되어 있습니다.
    우리에게 친숙한 삼성의 안드로이드 플랫폼은 JAVA, 혹은 요즘엔 코틀린으로 개발하기도 합니다.
    스마트폰 계의 양대산맥 애플은 iOS 플랫폼 위에서 움직이는데요,
    iOS는 Swift 혹은 ObjectiveC라는 개발언어를 이용합니다.

    웹 앱이란?

    웹 앱 예시 사진
    웹 앱 예시

    웹 앱이란 모바일 화면에 맞게 구성한 웹을 의미합니다.

    결론적으로는 웹사이트에서 연동되는 사이트와 같은 화면으로, 디바이스의 크기를 브라우저가 감지해 이를 모바일 버전의 화면으로 바꾸어(반응형 웹페이지) 화면으로 표출해줍니다.

     

    웹 앱에 접속하기 위해서는 브라우저 앱이 필수로 필요합니다.

    대게는 플랫폼에 자동설치되어 있는 브라우저 앱이 있고, 필요의 경우에 추가로 앱스토어에서 다른 브라우저를 다운받을 수 있습니다.

    PC에서 브라우저를 이용하는 것과 원리는 같기 때문에 주소를 통해 다양한 서비스를 다운없이 이용합니다.

     

    웹 앱은 장점이 상당히 많습니다.

    웹 개발방식과 동일하기 때문에 빠르게 개발이 가능하다는 점, 화면만 다르게 보이지, 실질적으로는 웹의 기능을 그대로 쓰는 것이기 때문에 관리의 측면에서 모바일을 따로 관리할 필요가 없으며, 앱 배포없이 기능을 자유롭게 수정 가능하여 유지보수가 용이합니다.

    또한, 다양한 플랫폼에서 실행할 수 있기 때문에 모바일 플랫폼을 신경쓰지 않아도 됩니다.

    하지만 이런 많은 장점에도 불구하고 모바일의 다양한 기능(API)를 연동하여 사용하지 못하기 때문에 모바일 서비스에 치중하고 있는 서비스는 결국 네이티브 앱을 선호하는 경향이 있습니다.

    또한 유려한 UI/UX의 구현도 네이티브보다 아쉬운 부분이 있다는 단점이 있습니다.


    하이브리드 앱 = 네이티브 앱 + 웹 앱?

    하이브리드 앱 예시 사진
    하이브리드 앱 예시

    하이브리드 앱은 네이티브 앱의 장점과 웹 앱의 장점을 결합하기 위해 시도된 앱의 형태입니다.

    사진에서 보이시는 것처럼 물리적으로도 둘은 한 화면 안에서 존재하고 있으며, 대게 웹앱에 네이티브 앱 프레임을 씌운 형태라고 이해하시면 될 것 같습니다.

    왼쪽의 3개의 화면에서 볼 수 있는 것처럼, 기본 인터페이스들은 네이티브 앱과 같다는 점을 알 수 있습니다.

    하지만 전체적인 서비스화면 표출은 웹과 연결함으로써, 브라우저에서 보는 웹앱의 화면과 일치시킵니다. 

    무신사 앱의 경우, 대부분의 기능들이 네이티브 앱으로 구현되어 있지만, 빠른 피드백이 필요한 신규 기능의 경우 사진처럼 부분적으로 하이브리드앱 형식을 채택하여 피드백을 바로 반영할 수 있도록 구조화되어 있습니다. 

    네이티브 API를 이용하기 위한 네이티브 앱과의 연결 사진
    네이티브 API를 이용하기 위한 네이티브 앱과의 연결

    또한, 위와 같이 부분적인 기능에 한해서 네이티브 앱으로 연결을 권장하는 사례도 있습니다.

    복잡하게 보일 수 있는 이 형식은 네이티브 앱의 종속적 API와도 연동이 가능하고, 웹앱처럼 유지보수가 쉽다는 큰 장점이 있습니다.  또한, 웹 개발만이 가질 수 있는 장점을 앱 개발로 가져와 사용할 수 있기 때문에 여러모로 확장성이 좋다고 말할 수 있을 것 같습니다.

     

    다만, 아쉬운 점은 그래도 여전히 모바일 플랫폼 개발자를 필요로 하기 때문에, 하이브리드 앱 개발을 위해서는 플랫폼별 개발 + 웹 개발이 동시에 이루어져야 합니다. 비용적인 측면에서는 하나만 집중하는 것보다 더 나올 수도 있다는 사실을 의미합니다. 


    셋 중에 그 어느 형식도 정답이라고 말할 수 없습니다. 

    서비스 기획자는 기획의 의도에 맞게 세 가지 형식 중 하나를 채택해서 프로젝트를 진행하면 됩니다. 하지만 각 방법의 장단점은 확실하기 때문에 이를 기억하고 비용적인 측면이나 시간을 생각하여 좋은 프로젝트를 만들 수 있도록 노력해야겠습니다.

Designed by Tistory.