brunch

You can make anything
by writing

C.S.Lewis

by 배울장 Mar 19. 2018

앱개발 가이드

앱을 개발하려고 하는 당신을 위한 가이드.

앱을 개발하려고 하는가? 어떤 앱을 개발하고 싶은가? 우선 필요하신 기능에 따라서 시간과 비용이 최적화 된 플랫폼을 선택해야 한다. 직접 개발하려고 할 때 가장 먼저 해야 할 것은 어떤 기능을 넣어야하는지 파악하고 개발 할 플랫폼을 선택하는 것이다. 앱개발은 크게 네이티브 개발하이브리드 개발로 나뉜다. 하나씩 살펴보도록 하자.


네이티브 개발은 iOS를 사용하는 애플제품이라면 애플에서 제공한 Xcode라는 개발 도구를 이용하여 개발하게 되고, 안드로이드 제품이라면 구글에서 제공한 안드로이드 스튜디오를 이용하여 개발하게 된다. 사용되는 언어가 각각 다르기 때문에 시간과 비용 측면에서 안좋다. 하지만 네이티브 개발을 하는 이유는 성능에 있다. 다른 개발 방법에 비해 빠른 성능을 낼 수 있다. 그리고 스마트폰 운영체제가 업데이트 되었을 때 가장 빨리 대응할 수 있다.


이런 네이티브에 반해 하이브리드 앱은 웹페이지를 그대로 앱으로 만드는데서 시작했다. 속도는 느리지만 개발 시간과 비용 측면에서 좋다. 개발시간이 매우 빠르고 비용이 적게 든다. 하지만 네이티브급의 속도를 기대하기는 어렵고 운영체제가 큰 업데이트를 맞이 했을 때 대응이 네이티브에 비해 느리다는 단점을 갖고 있다. 개발 속도가 네이티브에 비해 빠른 이유는 바로 크로스 플랫폼에 있다. 크로스 플랫폼이란 애플 제품에 탑재되는 iOS와 안드로이드 앱을 한 코드로 한번에 개발하는 것을 말한다. 서로 다른 언어로 같은 것을 개발한다는 것은 상상만 해도 시간과 비용이 많이 드는 것을 알 수 있다. 하지만 하나의 코드로 두가지 모두 개발하는 크로스플랫폼은 생산성이 매우 좋다. 대부분의 하이브리드 플랫폼이 크로스플랫폼으로 동시개발이 가능하다.


대표적인 크로스플랫폼은 자마린(Xamarin)이 있다. C#을 사용하며 하나의 코드로 아이폰, 안드로이드, 윈도우 폰까지 개발이 가능하다. 하지만 몇몇 네이티브 기능을 사용할 때는 크로스플랫폼이라는 이름에 걸맞지 않게 따로따로 코드를 짜주어야하는 경우가 있다. 이런 면에서 처음시작할 때 자마린을 선택하는 것은 무리가 있다.


그렇다면 어떤 플랫폼을 이용해야 초심자가 접근하기 좋을까? 나의 주관적인 생각으로 처음 접근할 때는 실제로 동작하고 즉각즉각 반응하는 것을 볼 수 있어야 흥미가 붙고 지속할 수 있다고 생각하기 때문에 아이오닉 혹은 리액트 네이티브를 권하고 싶다. 아이오닉과 리액트 네이티브는 자마린에 비해 국내 서적도 많은 편이고 처음에 접근하기가 용이하다. 어느 플랫폼을 개발하는지에 관계없이 빨간색 줄들의 오류가 당신의 눈앞에 아른거리는 경우가 없을 수가 없다. 한글로 검색해서 나오지 않는 경우가 많은데, 이때 영어를 읽는데 두려움이 없으시다면 그 문제를 빠르게 해결 할 수 있다. 물론 구글 번역기를 번역할 수 있는 능력이 있다면 상관없다.


게임을 개발하고 싶다면 앞서 말한 내용을 기억할 필요는 없다. 유니티, 언리얼 엔진을 사용하시면 된다. 혼자서 개발하시는 분들도 있으시지만 여러명이서 개발하는 것이 일반적이다. 그래픽 디자인, 코드, 백엔드 등 개발해야할 부분이 많기 때문이다. 다행히도 미리 개발해 놓은 코드들을 팔거나 미리 만들어진 그래픽을 살 수 있는 스토어가 엔진마다 있다. 이런 스토어를 이용한다면 작성해야 할 코드를 줄여 빠른개발 혹은 혼자서도 게임을 무리없이 개발 할 수 있다. 내가 이용해보지는 않았지만 서버와 통신하는 백엔드를 손쉽게 제공하는 뒤끝이라는 업체도 있고, 아마존웹서비스에도 백엔드를 보다 간편하게 작성 할 수 있도록 제공하는 툴들이 있다. 게임 개발은 앞서 말했던 애플리케이션들과는 다른 언어를 사용한다. 유니티 엔진은 C# 언리얼엔진은 C++를 사용한다.


단순한 기능을 하는 애플리케이션의 수익은 많은 경우에 프로버전을 따로 만들고 무료버전에서는 광고를 달기도 한다. 광고가 달려있는 버전에 인앱결제를 하면 광고를 없애준다던가 추가적인 기능들을 활용할 수 있는 앱들도 있다. 애플리케이션에서는 안드로이드던 iOS던 압도적인 수치로 구글 애드몹이 장악하고 있다. 굳이 특별한 이유가 없다면 구글 애드몹을 사용하면 된다. 인앱결제는 개발하시는 플랫폼에 맞추어 넣어주면 된다. 개발자들의 개발자인 아임포트를 적극 추천한다.


이상으로 앱개발을 하기 전 고려해야할 사항에 대해 적어봤다. 나의 실력이 높지 않기 때문에 주관적인 견해나 특정 부분들이 맞지 않을 수 있으니 필터를 켜고 읽었기를 바란다.

작가의 이전글 개발 Black Sheep Wall
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari