공통 모바일 앱 개발 시 툴 선택
2014.04.29 02:28
모바일 앱 개발을 위한 개발 툴 선택 시 참고하실 만한 자료를 세미나 자료를 기반으로 소개합니다.
일반적으로 모바일 앱 개발을 위해서는 벤더사 개발툴(XCode, Eclipse)와 웹 기술 기반 툴(Phonegap, Sencha 등)로 양분화 할 수 있습니다.
1, 벤더사 개발툴
- 네이티브위 UX와 성능을 발휘할 수 있는 최적의 앱을 개발할 수 있습니다.
- 네이티브로 중간영역이 최소화 되어 앱에 대한 침범을 최소화하여 최적의 보안환경을 제공합니다.
- 반면, 각 플랫폼 별로 코드베이스가 분개되어 여러 팀에서 동일한 기능을 중복 개발해야 하며
- 위의 이유로 개발 비용의 상승과 플랫폼별 기능상 차이가 발생하고, 일정을 맞추기가 어렵습니다.
2, 웹 기술 기반 툴
- 하나의 팀에서 여러가지 플랫폼을 동시에 개발하므로 초기 개발비용이 절감됩니다.
- 하나의 소스코드로 앱을 개발하여 신속하게 시장 출시 및 대응이 가능합니다.
- 반면, 앱의 특성상 웹 브라우저라는 컨테이너를 하나 더 거치므로 스크립트의 성능 이슈가 발생하고, 해커들의 타겟이 되기도 합니다.
- 네이티브가 아니므로 UX가 상이하고, 디바이스에서 제공하는 기능을 제한적으로 사용할 수 있습니다.
3, RAD Studio(Delphi, C++Builder)
- 벤더사의 개발툴과 웹 기술 기반 툴의 장점을 원하는 고객들의 니즈로 개발되었습니다.
- 네이티브의 UX, 성능, 보안과 더불어 하나의 소스코드로 단일 팀으로 개발비용을 절감할 수 있어 빠른 시장대응이 가능합니다.
- 제공되는 멀티플랫폼 프레임워크(FireMonkey)를 통해 모든 플랫폼의 기능을 하나의 소스코드로 작성할 수 있으며
- 완성도를 높이기 위해 각 플랫폼에서 제공하는 SDK에 직접 접근하여 디바이스에서 제공하는 모든 기능을 이용할 수 있습니다.
- 하나의 소스코드로 최고의 성능과 빠른 생산성을 얻을 수 있습니다.
각 플랫폼별 네이티브 개발이 가장 좋은 방법이지만 플랫폼 별 팀운영에 대한 비용과 관리의 어려움이 발생합니다.
네이티브 개발 시 앱이 CPU에서 발로 실행되므로 중간처리 시 침범 및 해킹에 대한 보안이 강화되고 최적의 성능을 발휘 할 수 있습니다.
하드웨어에서 바로 실행되는 네이티브앱의 경우 가장 빠른 반응성을 보여주므로 최적의 UX를 제공할 수 있습니다.