brunch

매거진 PM 과몰입

You can make anything
by writing

C.S.Lewis

by jooun Oct 13. 2022

네이티브앱이냐 하이브리드앱이냐
그것이 문제로다

[코드스테이츠 PMB 14] Daily

서비스를 개발하는 방식은 4가지이다. 모바일 웹, 웹 앱, 하이브리드 앱, 네이티브 앱 등 ,,,, 개발 방식에도 정답이라는 것이 있을까?  웹과 네이티브 앱의 단점을 모두 보완한 하이브리드 앱은 무조건 좋은 최신 개발 방식일까? 아니면 같은 도메인의 서비스가 채택한 개발 방식이 당신의 서비스에 가장 좋은 개발 방식일까?


'과연 어떤 개발 방식이 가장 좋은 방식일까?' 오늘은 이 물음에 대한 해답을 찾아보기로 했다. 

이 글을 통해 당신의 서비스에 적합한 개발 방식을 찾아보자!



1. 모바일 웹(Mobile Web)


특징

모바일에서 잘 보일 수 있게 모바일용으로 사이즈를 줄여 형성한 웹사이트

크롬, 사파리등 브라우저에서 주소를 치면 쉽게 접속할 수 있으며, 웹브라우저에서 동작

모든 os와 기기에서 접근 가능

풀 브라우저 방식( Full Browsing)


장점

개발 및 유지 보수가 간편

다운로드나 업데이트를 하지 않아도 유저는 최신 버전 사용 가능


단점

모바일 내부 장치를 사용하지 못함

디바이스 접근 권한 제한되는 경우가 많고, 유저 데이터 수집에도 한계 존재


예시)

네이버



2. 웹 앱(Web App)


특징

앱의 형태를 가지고 있지만 실제 내용은 대부분 웹에서 구현해 보여주는 페이지

단일 페이지 방식( SPA, Single Page Application)


장점

네이티브 앱에 비해 간단하게 구현 가능

모바일 웹보다 모바일 최적화된 형태


단점

모바일 내부 장치를 활용할 수 없음

접근 권한이 제한됨


예시)

무신사 모바일 앱



*모바일 앱과 웹 앱의 결정적인 차이

모바일 앱과 웹 앱을 구분하기가 쉽지 않다. 상당히 비슷하지만 한 가지의 결정적인 차이가 존재한다. 


모바일 앱- 풀 브라우저 방식( Full Browsing)

:화면 일부분이 변경될 때 화면 전체 내용으로 서버에서 새로 받아오는 방식, 페이지 리로드 할 경우 속도가 느릴 수 있음, 서버 접속 장애가 발생할 위험이 있음



웹 앱- 단일 페이지 방식( SPA, Single Page Application)

:브라우저에 최초 한 번 페이지 전체를 받아오고, 화면 일부분이 변경,요청될 때 해당 부분만 데이터 바인딩



3. 네이티브 앱(Native App)


특징

모바일 운영체제에 최적화된 언어를 사용해 개발한 앱

Android, ios에서 제공되는 SDK(Sofrware Develpoment Kit)를 사용해 개발


장점

모바일 기기의 내장 카메라, GPS, 알림, 센서 등의 기능 활용 가능

적극적이고 정교한 개발 가능, 높은 사양의 그래픽과 동적인 효과 구현 가능

설치 후 접근 용이, 이용 편리


단점

소프트웨어이기 때문에 만드는데 어렵고 시간도 오래 걸림

ios, android는 개발 언어도 다르고, 정책도 다르기에 각 정책에 맞춰 기능 및 UX를 다르게 여러개 생성필요


예시)

카카오톡, 인스타그램, 트위터



4. 하이브리드 앱(Hybrid App)


특징

웹과 네이티브 앱의 단점의 보완이 가능한 앱

네이티브 앱의 구조로 되어 있으나, 일부 기능들을 웹으로 구현해 개발하는 방식

앱에서 웹 페이지를 불러옴


장점

내용을 변경할 때 스토어에 등록한 앱을 수정, 등록하지 않아도 불러오는 웹페이지를 수정하면 되기 때문에 운영이 수월

안드로이드 ios 둘 다 동일한 페이지를 불러오기 때문에 개발 공수 최소화

카메라 전화걸기 등 모바일 내부 기능 구현 가능


단점

네트워크의 상태에 따라 속도 저하

기획부터 개발, 배포까지 운영체제에 맞게 제작되는 네이티브 앱에 비해 사용성이 부족할 수 있음


예시)

네이버 앱





그래서 어떤 개발 방식이 가장 좋을까?


어떤 개발 방식이 좋을지에 대한 답을 내려드리겠다.

정답은 바로 당신에게 있다.

당신이 다룰 서비스의 기능, 시간, 그리고 내부 인력을 기반으로 더 좋은 개발 방식을 채택할 수 있다.


1) 기능: 정교한 기능이 더 중요한지, 빠른 업데이트가 더 중요한지
2) 시간: 얼마만큼의 시간이 주어져 있는지
3) 인력: 내부 개발 인력이 얼마나 있는가, 유지보수는 어떻게 할 계획인가, 이 후 개발은 어떻게 진행되는가


개발 방식에 대한 고민에는 서비스의 특징, 회사의 상황도 반영되어야 한다. 가장 중요한 것은 주어진 자원으로 최고의 솔루션을 만드는 것이기에, 개발 계획은 개발에 한정짓기보다 서비스의 지향점, 내부의 인력의 상황과 같은 내부적인 요소에 집중하여 반영하는 것이 좋을 것이다. 





#PM부트캠프 #코드스테이츠 #PMB #PM #프로덕트매니저 #공감 #brunch #개발 #개발자 #서비스기획 #개발방식 #앱개발 #일상 #취준 #취준생 #직장인 #기획자 #기획 #IT #IT지식


매거진의 이전글 개발자 도구로 간편하게 스티비 해부하기!
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari