2022. 8. 9. 21:37ㆍEvery moment/Daily
이제 PC는 기본이고, 앱이 새로운 비즈니스의 수단으로 자리 잡았다. 많은 기업들이 앱을 만들고 있는데, 앱을 만들기 전에 고려해야 할 사항으로는 어떤 것이 있을까? 예산, 내부 인력풀 등의 조건이 있겠지만 만들고자 하는 구현하고자 하는 주요 기능이 무엇인지 살펴보아야 한다. 가령, MVP를 달성하기 위해 비교분석해본 결과 아직까지는 모바일 웹으로만 구현해도 무방한 상황일 수도 있고, 혹은 우선 빠르게 네이티브 앱을 만들어야 하는 상황일 수도 있다. 그렇다면 어떤식으로 개발하면 좋을지 각각의 특징 및 장단점을 살펴보자.
1. 네이티브 앱 (Native App)
(클릭하시면 크게 보실 수 있습니다.)
- 보통 '어플리케이션', '어플', '앱'이라고 말하는 것을 의미
- 모바일 운영체제에 최적화된 언어를 사용해 개발
- 안드로이드 앱: 안드로이드 SDK를 이용하여 Java 언어로 제작
- 아이폰 앱: iOS SDK를 이용하여 Objective-C 언어로 제작
- *SDK: Software Development Kit의 약자, 소프트웨어를 개발하는 도구
[장점]
- 일반 페이지보다 빠르고 안정적이기 때문에 더 나은 유저 경험을 제공한다.
- 블루투스나 연락처 등과 같은 기기의 기타 기능과 앱을 직접 연결하는 것이 용이하다.
- 상대적으로 더 높은 수준의 보안을 제공하기 때문에 유저 개인정보 보호를 강화할 수 있다.
[단점]
- 플랫폼에 한정적: 극단적인 예시로, 핸드폰이 없는 사람은 사용할 수 없다. 컴퓨터나 노트북이 없는 사람은 적어도 공용 컴퓨터로 접근이 가능하나, 네이티브 앱은 핸드폰이 없을 경우 개인이 설치하고 둘러보기 어렵다.
- 언어가 제약적임: 웹 기반인 경우 다양한 언어로 개발할 수 있지만, 네이티브 앱은 각 해당 언어와 API를 다루는데 익숙해야 한다.
- 각각의 개발 담당자 필요: Android와 iOS의 언어가 다르기 때문에 각각을 담당할 개발자가 필요 (그렇기 때문에 하나만 개발한 후, 추후 나중에 개발하는 경우도 있다)
[예시]
카카오톡(메신저)
2. 모바일 웹 (Mobile Web)
(클릭하시면 크게 보실 수 있습니다.)
- url 앞에 m을 붙이면 나오는 모바일 버전의 웹사이트라고도 볼 수 있다. (=적응형 사이트)
- pc가 아닌 모바일을 기준으로 하여 모바일에 중점을 두고 개발
- 스마트폰에 내장된 웹 브라우저를 통해 접속하는 형태로, 일반적인 웹 기술로 개발 가능
[장점]
- 사용자가 앱을 설치할 필요가 없다: 모바일 웹은 pc로도 보려면 볼 수 있으므로, 꼭 핸드폰이 아니더라도 공용 pc 등으로도 접근할 수 있다.
- 유지보수 용이: 호스팅이나 서버상의 문제만 없다면, 자유롭게 업데이트와 유지보수가 가능하다.
- 반응형 제작 시 모든 디바이스에서 접근 가능: 모든 pc, 태블릿, 모바일 기기에서 최적화될 수 있도록 만들 경우 접근성이 높아진다.
[단점]
- 사용자가 검색, url 입력해야 함: 한번 설치하면 끝나는 앱과는 달리, 매번 유저 진입 단계에 몇 단계씩 더 추가되므로 접근성이 다소 떨어진다.
- 기기 접근 불가능: 내부 데이터, 마이크/카메라 등의 부가 기능 등에 접근할 수 없다.
[예시]
네이버(m.naver.com), 다음(m.daum.net)
3. 웹 앱 (Web App)
(클릭하시면 크게 보실 수 있습니다.)
겉으로 보이는 모습이나 구동방식을 앱처럼 보이도록 만들어둔 것이기 때문에, 주로 모바일로만 사이트를 이용하는 사용자는 익숙하게 사용할 수 있다. 다만 모바일 웹과는 다르게 단일 페이지 방식(SPA)으로, 최초 한 번에 페이지 전체를 받아와 웹뷰를 띄워 그 내부의 URL로 접근하여 모바일 웹보다는 속도가 빠르다.
[장점]
- 사용자가 앱을 설치할 필요 없음.
- 별도의 마켓 업데이트가 필요 없어 유지보수가 쉽다
- OS별로 별도로 제작할 필요가 없으며, 그렇기 때문에 상대적으로 제작 비용이 저렴하고 기간이 짧다.
[단점]
- 한번 설치하면 끝나는 앱과는 달리, 매번 유저 진입 단계에 몇 단계씩 더 추가되므로 접근성이 다소 떨어진다.
- 기기 접근 불가능: 내부 데이터, 마이크/카메라 등의 부가 기능 등에 접근할 수 없다.
- 상대적으로는 네이티브 웹보다 속도측면에서 퍼포먼스가 낮다.
[예시]
"인스타그램 > 홈 화면 바로가기" 추가
4. 하이브리드 앱
(클릭하시면 크게 보실 수 있습니다.)
웹을 기반으로 앱의 기능을 차용, 앱 안에 웹 뷰를 불러온다. 웹의 장점과 네이티브 앱의 장점을 결합한 방식이다.
[장점]
- 웹 부분에 대한 별도의 사용자 업데이트, 앱 업데이트가 없음
- 앱과 웹의 API를 적절히 섞어 쓸 수 있음
- 상대적으로 구현 난이도가 낮다 → 개발기간이 짧고, 유지보수 및 구현 비용이 적게 든다.
- 상대적으로 다양한 기능을 적용할 수 있다.
[단점]
- 네이티브 앱보다는 상대적으로 느리다. (속도 등에서 약간 퍼포먼스가 떨어진다)
- 네이티브 앱 대비 기능적 제약이 일부 있으며, 업데이트 시 마켓의 심사 과정을 거쳐야 한다.
[예시]
금융사 앱(케이 뱅크 등), 쇼핑몰 앱
위 내용을 간략하게 요약하면 아래와 같다.
내가 한 프로덕트의 PM이라면 제품을 기획하는 과정에서 각 앱의 형태를 어떻게 선정할까?
구체적으로는 프로덕트의 성격과 설정한 MVP에 따라 다르겠지만, 간략하게 적자면 다음과 같다.
(1) 모바일 웹: 상대적으로 프런트엔드 개발자는 공급이 원활하기때문에, 굵직한 기능요소가 필요한게 아니라면 가장 먼저 고려해볼 수 있다. 또한, 그누보드나 워드프레스같은 CMS를 활용하여 PC~모바일 전체를 아우르는 웹페이지를 만들 수 있다.
(2) 하이브리드 앱: 기존에 구현한 프론트엔드 작업을 앱의 틀로 만들어 배포할 수 있을 것 같다. 현실적인 판단으로는, 기술적 제약이 있는 경우에 고려해볼 수 있다.
(3) 네이티브 앱: 기능이 많아지고, 사업 확장을 염두에 둘 때 네이티브 앱으로 완전히 전환할 것같다. 혹은, 처음부터 빠른 속도와 앱 화면을 통한 긍정적인 ux가 중요한 경우에 처음부터 네이티브 앱으로 시작할 수 있다.
[참고 자료]
'Every moment > Daily' 카테고리의 다른 글
[코드스테이츠 13기] ABLY의 유저 구매 플로우 차트 회고 & 보강 (0) | 2022.08.12 |
---|---|
[코드스테이츠 13기] 다음 우편번호 서비스 API 살펴보기 (0) | 2022.08.10 |
[코드스테이츠 13기] 당근마켓 랜딩페이지 html/css/js 분석 (0) | 2022.08.08 |
[코드스테이츠 13기] 인스타그램 인플루언서를 태블로로 분석해보기 (0) | 2022.08.07 |
[코드스테이츠 13기] 알툴즈의 현재 사업단계는? (0) | 2022.08.03 |