분명 1편으로 끝내려고 작성 중이었는데 할 말이 너무 많아서 이미 2편이 되어버렸습니다.
우선 1편으로 시작!
개린이도 아니고 마케터가 이해한 대로 작성하였기 때문에 틀린 점이 있으면 댓글로 남겨주세요. 바로 반영하겠습니다.
플랫폼 구분
웹: 당신이 아는 홈페이지
더 이상의 설명은 생략...
앱
네이티브앱: 모바일 언어로 모바일 앱을 개발한다.
안드로이드(AOS)
언어: Java, Kotlin
iOS
언어: Swift, objective C
성능: 빠름, 안정적, 다양한 네이티브 기능 활용 가능
장점: 각 운영 체제에 최적화된 개발이 가능해서 기능과 속도가 우수
단점: 요새 Flutter 쓰면 AOS/iOS 개발자 따로 없이 하나로 되지 않아?라는 말을 들음
모바일에 저장된 주소록, 사진 등을 활용할 수 있다. 카메라, 플래시 등의 센서를 사용할 수 있다. 혹시 만들어야 하는 앱이 위 기능들을 필요로 한다면 네이티브로 제작해야 한다.
최근 구글의 Flutter와 Facebook의 React native 같은 크로스플랫폼이 뜨고 있다.
네이티브 좋은 거 모르는 개발자는 없다.
근데 코딱지만 한 스타트업에서, 명확한 매출확보 방향성 없이 AOS/iOS/서버 개발자 3명을 모두 고용할 확률? 세명을 구하면 연봉이 1억은 훌쩍, 2억 도 가능할 수 있기 때문에 사실상 어렵다. 개발자를 못 구하면 턴키 방식으로 외주를 주게 되는데 그럼 업데이트할 때마다 더 어렵다. 그래서 이중 한 명이라도 줄이려다 보니 크로스 플랫폼이 떠오르는 것...
예시 앱: 카카오톡, 인스타그램, 트위터 등
모바일웹/웹앱: 웹페이지를 모바일에서 실행한다.
둘 다 브라우저에서 검색하거나 URL로 들어간다.
모바일웹 : 화면을 새로고침할 때 전체 내용을 다운로드한다.
반응형으로 제작한다.
예시 앱 : 유튜브
웹앱(적응형 웹): 화면을 새로고침할 때 바뀐 부분만 받아온다. (모바일웹+네이티브앱)
모바일 웹보다는 최적화가 되어있다. 기존 url 앞에 m 붙어 있다.
예시 앱:
언어: 웹언어
장점:
-운영체제 대응이 필요 없음
-앱심사를 안 받으니 반려도 없음
-개발기간이 짧음
-기기 대응이 필요 없음 (링크 하나로 패드/탭도 가능)
단점: 느림
모바일에 저장된 정보를 활용할 수 없음(사진, 위치 등)
하이브리드앱 / 사실은 웹인데 모바일인척한다.
껍데기는 네이티브 앱인데 웹 앱을 실행시킨다.
앱의 중심은 HTML 기반의 웹앱으로 제작하고, 껍데기(패키징)만 플랫폼 안에서 처리한다.
일반인 눈에는 앱으로 보이지만 사실은 웹이었던 앱.
언어: 웹언어
장점:
-모바일 웹보단 빠름
-웹 개발 기술로 앱개발이 가능
-네이티브 API와 브라우저 API 둘 다 사용가능
-한번 개발로 다수 대응가능
-유지보수 쉬움
-앱용량이 가벼움
단점: 속.. 도.. 가.. 느림... 우리 홈화면 왜 이렇게 느려요?
네이티브 기능 접근을 위해서는 결국 개발자가 네이티브를 배워야 한다. (그렇지만 그건 대표님은 모르지.)
예시 앱:
그리고 개발자의 욕심이라는 게, 네이티브 배우다 보면 개발적으로 더 완성도가 높은 네이티브 앱으로 스멀스멀 흘러가고 싶은 것 같다.
개발이 빠른 순
모바일 웹 > 모바일 웹앱 > 하이브리드 앱 > 네이티브 앱
당연히 안정성과 기능이 많은 건 역순이다.
크로스 플랫폼앱
장점: 한 가지 언어와 프레임워크로 AOS/iOS를 양쪽에 출시가능
단점: 기능 구현에 제약이 많음
디자인이 하이브리드에 비해 제한 있음
성능적인 이슈 있을 수 있음
그러나.. 요즘.. 뚜렷한 대세!
예시 앱: