[Daily Contents] 모바일 앱, 어떤 프레임워크로 개발할까?
네이티브 앱
- 안드로이드와 IOS
- 초창기에는 소프트웨어 적으로도 하드웨어적으로도 차이가 명확.
- 갈수록 비슷해지고, 두 가지를 한 번에 개발할 수 있는 방법이 없을까?
- 웹 페이지로 앱을 개발?
하이브리드 앱
- Native + HTML
하이브리드 앱의 원리
- Web View라는 브라우저가 실행
- 일반적인 브라우저에서 주소창이 없어진 형태
하이브리드 프레임워크
- CORDOVA
하이브리드 앱의 장점
- 앱 개발에 대한 지식이 없어도 개발이 가능
- 웹 페이지 하나의 개발로, 웹, 앱 모두 서비스 가능
- 앱이 업데이트 될 때마다 앱 마켓에 업로드 할 필요 없음
하이브리드 앱의 단점
- UI로 전부 직접 개발해야 함
- 앱의 속도가 느림
- 스마트폰이 제공하는 기능을 사용하기 어려움
- 네이티브의 UI를 따라가기 어려움
- 화면을 전부 불러오기 때문에 데이터 사용량이 많음
크로스 플랫폼의 원리
- 단점을 보완해 보자
- 네이티브에 라이브러리를 제공
- 하이브리드 앱은 스마트폰에 있는 하드웨어적인 기능을 라이브러리로 변환해서 사용했기 때문에 속도가 느림
- 공통으로 사용하는 언어 하나로만 만들면 네이티브로 컴파일하여 네이티브 애플리케이션으로 나오게 해 줌
- 속도도 빠르며 퍼포먼스도 좋게 되었음
크로스 플랫폼의 종류
- React Native
- Xamarin
- Flutter
100% 네이티브처럼 개발이 가능?
- NO
크로스 플랫폼 포기
- airbnb
- React Native를 포기하고 네이티브로 전환
리액트 네이티브
- Latest version : 0.66
- 1 버전으로 시작하지 않는 것은 완벽하지 않은 베타 버전이라는 의미
- Flutter도 마찬가지로 언제든지 서비스를 종료하게 될 수 있음
크로스 플랫폼 앱의 단점
- 네이티브의 모든 기능을 제공하지는 못함
- 새로운 기능이 나왔을 때 업데이트 속도가 느림
- 사업이 중단되어 프레임워크가 사라질 가능성이 있음
스타트업 등은 네이티브로 두 플랫폼을 개발할 여력이 없기 때문에 먼저 빠르게 크로스 플랫폼 등으로 개발해서 출시하고 시장의 반응을 본 후 후일 네이티브로 전환도 가능
결론?
- Native VS Hybrid vs Cross-platform
- 기본은 네이티브. 네이티브의 원리를 잘 이해하고 있다면 하이브리드나 크로스 플랫폼은 쉽게 익히고 다룰 수 있음
- 처음 공부를 한다면 네이티브를 공부하는 것을 추천
- 빠르게 서비스를 배포하고 시장의 반응을 보고 싶다면 하이브리드나 크로스 플랫폼을 추천
댓글남기기