[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
  • 기본은 네이티브. 네이티브의 원리를 잘 이해하고 있다면 하이브리드나 크로스 플랫폼은 쉽게 익히고 다룰 수 있음
  • 처음 공부를 한다면 네이티브를 공부하는 것을 추천
  • 빠르게 서비스를 배포하고 시장의 반응을 보고 싶다면 하이브리드나 크로스 플랫폼을 추천

댓글남기기