대세는 스마트폰, 개발자가 꼭 알아야 할 핵심요소들
최근 해외의 10대 소년이 단 며칠 만에 게임을 제작해 세계 다운로드 랭킹 1위에 올랐다는 사실이 세계적인 이슈로 떠올랐다. 오픈마켓이라는 글로벌 시장에서 개인의 아이디어가 빛을 발할 수 있다는 증명이라 해도 좋을 이 사건은, 국내의 많은 개발자들에게 개발 의지를 북돋아 주기에 충분했다.
많은 개발자들이 스마트폰 개발에 뛰어들었다지만 스마트폰 개발 분야는 이제 막 태동 단계다. 스마트폰 분야에 '한 번쯤 도전해볼까' 라며 망설이는 개발자분들이 고려해야 할 가장 기본적인 사실들을 정리해봤다.
< 아이폰, 반드시 개발해야 할 플랫폼>
아이폰은 단일 스마트폰 시장으로 치면 가장 크다. 앱의 총 다운로드 횟수가 50억 회를 훌쩍 넘어간다. 아이폰3부터 아이폰4, 아이패드에 이르기 까지 한 번만 개발 스킬을 익히면 해상도 차이만 날뿐이기 때문에 폭넓게 대응하기에도 좋다.
개발자 환경도 좋은 편이다. 개발에 대한 웬만한 소스 및 정보는 대부분 인터넷에서 찾을 수 있기 때문에 초보 개발자라도 도전할 만 하다.
다만 아이폰의 언어는 오브젝트C로, 기본 C언어와는 다르다. 때문에 적응하는데 시간이 걸린다. C언어 기반이기 때문에 국내 개발자들이 다루기는 편하지만, 프로토콜이라든지, 프로퍼티 등 세세한 기본 사항을 알고 시작해야 한다.
또 아이폰으로 콘텐츠를 개발하려면 기본적으로 애플이 출시한 각종 장비를 사야한다. 때문에 개인이 작업을 하려면 장비 구입 비용이 만만치 않게 들어간다. 오픈마켓이라고 하지만 런칭은 애플 마음대로인 점도 염두에 둬야 한다. 평균 10개를 신청하면 7개 정도 서비스할 수 있는 수준이며, 반려되었더라도 왜 되었는지 명확히 설명을 들을 수 없다. '애플 기준'에 맞추라고 하지만 이미 국내에서도 관련으로 안 좋은 사례가 이슈가 되기도 했다.
또 3D로 개발해야만 하드웨어 가속을 지원받을 수 있기 때문에, 고품질의 2D 게임을 제작하고 픈 개발자들도 제 성능을 내려면 일부러 3D 기술을 활용할 수 밖에 없다. 이외에 앱을 출시하려면 미리 애플에 개발자 등록을 해야 하며, 영어로 이메일을 통해 진행하면 된다. 보통 등록하는데 한 달 정도의 시간이 걸린다.
< 안드로이드, 대세가 되기 위한 용트림>
기본적으로 안드로이드는 삼성 갤럭시S로 국내에 기틀을 닦았고, 또 해외에서도 HTC 등 우군이 되는 하드웨어 제조사들이 많다. 하나 하나의 제품이 아이폰에 물량으로는 밀리지만, 연합군 형태를 띄어 아이폰의 보급대수를 훌쩍 넘기고 있다. 무상 OS라는 이유 만으로도 앞으로 안드로이드가 더 빠르게 퍼질 것 또한 자명한 사실이다.
다만 안드로이드는 국내 개발자들에게 아이폰 보다 훨씬 난해한 느낌을 준다. 우선 주 언어가 자바다. 국내에는 C언어를 주로 다뤄온 개발자들이 많기 때문에, 그 자체가 우선 걸림돌이다.
게다가 잦은 버전업도 개발자에게 불편함을 주고 있다. 2.1이 나온지 얼마 안되어 2.2 프로요 버전이 대세를 이뤘고, 벌써 2.3 진저브래드로 체인지된 스마트폰이 출시를 기다리고 있다. 여기에 그 다음 버전인 허니콤까지 발표되면서 개발자들을 난감하게 만들고 있다.
다행히 안드로이드에는 NDK라고 하는 C언어 관련 툴이 보급됐다. 이 NDK는 C/C++ 코드로 안드로이드 어플을 만들 수 있는 툴로, 빠르지는 않지만 꾸준한 버전 업을 통해 최근 버전인 R5 버전에서는 STL까지 지원을 해준다. STL은 CPP언어 특유의 자료구조형 라이브러리다.
하지만 100% C/C++ 코드로 어플을 만드는 건 불가능 하고, 자바와 통신을 할 수 있는 레이어단을 구성해줘야 하는 번거러움이 있으나, NDK는 국내 C/C++ 게임 개발자들에겐 단비 같은 존재이다.
NDK는 계속 발전하고 있으며, 구글 측에서는 2.3 버전에서 NDK를 훨씬 지금보다 게임 프로그래밍 개발이 쉽도록 지원한다고 발표한 바 있다.
또 하나 고려해야 할 점은 안드로이드 시장이다. 국내의 경우 사전심의가 의무시 되어 있는 현행 법 상 구글이 국내 게임 시장 등을 열어줄 가능성은 희박하다고 알려지고 있다. 때문에 SK텔레콤에서 런칭한 T스토어라는 별도의 오픈마켓을 중심으로 시장성을 파악해야 개발한 뒤에 혼란이 없을 것으로 예측된다.