본문 바로가기
Cordova

Cordova에 대한 소개

by 붕어사랑 티스토리 2023. 1. 9.
반응형

https://cordova.apache.org/docs/en/11.x/guide/overview/index.html

 

Architectural overview of Cordova platform - Apache Cordova

Overview Apache Cordova is an open-source mobile development framework. It allows you to use standard web technologies - HTML5, CSS3, and JavaScript for cross-platform development. Applications execute within wrappers targeted to each platform, and rely on

cordova.apache.org

 

 

1. 개요

아파치 코르도바는 오픈소스 모바일 개발 프레임워크이다. 코르도바를 이용하면 web 기술 - HTML5, CSS3, Javascript등을 이용하여 크로스 플랫폼 개발을 할 수 있다. 애플리케이션은 각 플랫폼에 대응하는 wrapper 내에서 실행되며, 센서, 데이터, 네티워크 상태같은 표준 API를 사용할 수 있다.

 

 

코르도바를 사용하는데 적합한 대상은 다음과 같다

  • 모바일 앱 개발자이며 하나이상의 플랫폼에 앱을 구동하고 싶은 사람.
  • 다양한 스토어에 웹앱을 배포하고 싶은 웹 개발자
  • 네이티브 컴포넌트와 웹뷰를 혼합하고 싶은 모바일 게발자

 

 

(여기 까지 정리해보니, 웹뷰를 쓸거면 코르도바가 적합하다! 라는 얘기로 들린다. 디이렉트로 웹뷰 쓰는것과 차별점이라면 네이티브와 통신구축이 잘 되어 있다는 거랄까?)

 

 

2. 아키텍쳐

 

 

WebView

코르도바에서의 유저인터페이스, 즉 UI이다. 웹뷰를 통해 유저와 앱간의 소통하는것을 목적으로 한다.

단순히 Only WebView만이 아닌, 네이티브 컴포넌트와 웹뷰를 혼합하여 사용할 수도 있다.

 

웹뷰와 혼합하는 방법은 여기로

 

 

 

WebApp

당신의 코드가 실제로 있는 곳 이다. 코르도바의 어플리케이션은 웹페이지로 구현되며, 기본적으로 index.html에 구현되고, 여기에 CSS, 자바스크립트, 이미지, 미디어파일 또는 기타리소스가 포함된다. 이 WebApp은 WebView에서 실행된다

 

코르도바에서 중요한 파일인 config.xml이라는 파일이 있다. 이 xml 파일에서는 앱에대한 정보를 제공하고 관련된 파라미터들을 설정한다.

 

 

Plugins

플러그인은 코르도바에서 몹시 중요한 역할을 한다(이거 아니면 쓸 이유 없는듯). 플러그인이란 코르도바와 네이티브 컴포넌트간의 인터페이스이고, 둘간에 통신을 가능하게 해 준다. 즉 플러그인을 이용하면 자바스크립트를 이용하여 네이티브 코드를 호출할 수 있다.

 

아파치 코르도바에서는 Cord Plugin이라고 하는것들이 있다. 이 코어 플러그인은 배터리, 카메라 같은 HW 요소들에게 접근할 수 있다.

 

코어플러그인 뿐만 아니라, 아파치 코르도바는 3rd party 플러그인(플랫폼에 종속되지 않은, 즉 보통 hw사용이 필요없는 작업들)들도 제공한다.

 

주의사항: 코르도바 프로젝트를 만들면 처음에는 아무 플러그인도 없고 이것은 기본값이다. 플러그인은 개발자가 원할시 직접 추가해주어야 하며 코어플러그인 또한 마찬가지다.

 

 

 

3. 개발방향

코르도바는 두가지 개발방향을 제시하고 있다

 

  • 크로스 플랫폼 중심의 workflow

당신이 최대한 여러개의 모바일 플랫폼에서 앱을 돌리고, 플랫폼 종속적인부분이 적도록 개발하고 싶다면 이 방법을 선택해야 한다. 이 workflow로 작업을 하면 Cordova CLI를 중심으로 개발하게 된다. Cordova CLI를 이용하면 한번에 여러개의 플랫폼 프로젝트를 동시 생성해 주며 low-level 쉘 스크립트 기능들을 대부분 추상화 해 준다. CLI는 web assets들을 각각의 플랫폼의 서브디렉토리에 카피해주고 필요한 configuration들을 각각 플랫폼에 맞춰 변화 및 빌드 스크립트등도 실행할 수 있다. 또한 CLI는 플러그인을 앱에 적용할 수 있는 공통 인터페이스를 제공한다. 이 방법으로 개발을 시작하고 싶다면 Create your first app 가이드를 참고하자.

 

  • 하나의 플랫폼 중심의 workflow

하나의 플랫폼 중심으로 개발하고 싶고, 기존에 있던 네이티브 컴포넌트들을 코르도바와 혼합하고 싶을경우 이방법을 사용한다. 앞서 언급된것 처럼 Embedding WebViews 하는것이 이러한 방법이다. SDK 내에서 프로젝트를 수정해야 하는경우 경험상 이 워크플로를 사용해야된다.

 

 

(라고 나와있는데.. 설명이 좀 어렵게 되어있다. 시작부터 크로스 플랫폼을 목적으로 개발하는 것 이라면 Create your first app을 따라가면 되고, 기존에 있던 프로젝트에 코르도바 웹뷰를 혼합하고 싶으면 Embedding WebViews를 따라가는 소리인걸로 보인다)

 

반응형

'Cordova' 카테고리의 다른 글

CordovaPlugin 기초  (0) 2023.01.04

댓글