본문 바로가기

App

[앱] 앱 개발

 

하이브리드 (웹앱)

크로스플랫폼

네이티브

정의

    • 뷰를 감싸고 있는 웹사이트
    • UI 웹기반 html, CSS, JS 구현하고 JavaScript Engine 호출 하여 사용하는 방식
    • 네이티브 코드가 아닌걸로 코딩한 나중에 ios/android 이해할 있는 코드로 변환

android or ios 코드를 쓰는거

 

언어

html, css, js(javascript)

    • 리액트 네이티브. 리액트로 코딩 -> JavaScript 코드로 컴파일 -> ios/android 이를 각자의 자바스크립트 엔진으로 실행
    • flutter -> Dart 코드 쓰고 -> C, C++ 컴파일
    • xamarin -> C# 작성 -> IL 컴파일

ios -> swift

android -> java or kotlin

장점

    • 네이티브 앱에 대한 지식이 필요 없다
    • UI 작업을 손수 해야 된다
    • 코드를 한번만 작성하여 2 플랫폼에서 확인 가능
    • 다양한 배경의 개발자를 끌어 모음
    • 웹으로 퍼블리싱하기 용이하다
    • 서버에 View 이용하여 빠르게 수정할 있다
    • 개발비용이 비교적 적게든다
    • 폰이 갖고 있는 파워만큼 파워를 갖게
    • 어떤 API 사용 가능
    • 유저가 사용하기에 가장 편하고 빠르다
    • 다양한 기능들에 대한 접근이 자유롭다

단점

    • 폰의 강력한 기능을 사용할 없다
    • 브라우저위에서 동작하므로 앱이 무겁고 일부 기능이 완벽하게 지원이 안됨
    • 네이티브 앱이 아니므로 퍼포먼스 이슈가 생길 있다
    • 네이티브앱보다는 속도가 느리다
    • 기능적인 접근에 제한이 많다
    • 2 플랫폼 언어를 배워야 한다는
    • 개발의 시간 비용이 높다

도구

apache cordova & phonegap

 

ios(xcode)

android(android studio)

선택

 

 

퍼포먼스가 필요할 경우

 

 

플러터( 선호)

리액트 네이티브

사용처

구글

페이스북

 

 

    • 오픈소스 프로젝트
    • 페이스북에서도 100% 쓰지 않음

장점

기본적인 디자인 제공

    • 레퍼런스 양이 많다
    • JavaScript 베이스로 하게 경우 유용
    • 시장성은 좋다

'App' 카테고리의 다른 글

[앱] React-Native Hello World  (0) 2020.05.19
[앱] 하이브리드 vs 크로스플랫폼  (0) 2019.12.10