안드로이드 로봇 만들기
‘로봇’이라는 익숙한 이 단어는 언제부터 사용되었을까? 1920년으로 거슬러 올라갑니다. 카렐 차페크의 희곡 『로숨의 유니버설 로봇(R.U.R: Rossum’s Universal Robots)』 에서 처음으로 쓰였다고 합니다. 이 작품에서 등장하는 기업의 이름이 바로 ‘로숨의 유니버설 로봇’입니다. 로봇(robot)은 강제노동을 의미하는 보헤미아어 ‘로보타(rotoba)’ 비롯되었습니다. 차페크가 창조한 로봇의 가장 큰 장점은 영혼과 감정이 없는 일 잘하는 무임 노동자라는 점입니다. 이렇게 로봇은 인간을 위해, 인간의 일을 대신할 수 있게 만들어진 것이 로봇이라는 단어의 시초입니다.
아직 공상과학 소설에서 나오는 이야기처럼 아직 로봇은 인간의 모든 노동을 대신할 수 없습니다. 가까운 미래에는 가능하겠죠. 하지만 지금도 안드로이드 스마트폰은 네모난 최첨단 기계에서 엄지손가락 클릭으로 우리의 일을 대신 해줍니다. 은행에 가지 않아도 돈을 이체할 수 있고, 각종 공과금 또한 처리할 수 있습니다. 교통카드와 신분증까지 대신합니다. 이 작고 네모난 손위에 로봇 덕분에 저는 요즘 지갑을 들고 다니지 않습니다.
스마트폰 속 안드로이드 로봇에게 일을 시키는 일은 공상과학 영화에서 나오는 로봇처럼 만드는 일처럼 아주 어렵지 않습니다. 생산공장도 필요하지 않습니다. 스마트폰 한대와 노트북 한대 그리고 손가락만 있으면 준비완료입니다. 그럼 어떻게 안드로이드 어플을 개발할 수 있는지 함께 알아보도록 하겠습니다.
안드로이드 스튜디오의 등장
안드로이드 어플을 만들기 위해서는 도구가 필요합니다. 음식을 만들 때 칼, 가위, 도마, 냄비와 같이 그러한 도구가 말이죠. 그래서 구글은 안드로이드 어플 개발을 위해 아주 훌륭한 프로그램을 선보입니다. 바로 ‘안드로이드 스튜디오(Android Studio)’입니다. 안드로이드 전용 앱 제작을 위한 공식 통합 개발 환경입니다. 2013년 5월 16일, 구글 I/O 컨퍼런스에서 구글의 제품 관리자인 엘리 파워스(Ellie Powers)에 의해서 발표됩니다.
이전까지는 오래된 인터페이스 디자인을 가진 이클립스(eclipse)라는 프로그램을 사용하여 안드로이드 앱을 개발하던 시기였습니다. 하지만 느린 속도와 불편한 시뮬레이션툴은 개발자들로 하여금 안드로이드를 공부하고 싶지 않게 하는 요소였습니다. 저 또한 이클립스로 안드로이드를 개발하였을 때의 그 답답함이란 추억하고 싶지 않은 기억입니다. 하지만 안드로이드 스튜디오는 안드로이드 개발자들에게 날개를 달아주었습니다.
안드로이드 스튜디오 프로그램의 장점을 뽑아보자면 첫 번째는 빠른 속도입니다. 버벅거리는 이클립스에 비해 인텔리J 기반으로 만들어진 이 도구는 신속한 코딩이 가능합니다. 그리고 인텔리전트 코드 에디터라는 기능입니다. 코딩을 할 때 당장에 필요한 코드와 관련된 제안을 신속하게 제안해 줍니다. 검색 사이트에서 타자를 줄여주는 자동 검색어 완성과 비슷한 기능이라고 생각하시면 됩니다. 그리고 다양한 가상 디바이스 제공입니다. 컴퓨터 화면상에서 곧바로 가상 스마트폰을 실행하면서 만들어질 앱을 테스트 할 수 있습니다.
강력한 기능 덕분에 당연히 개발자들은 안드로이드 스튜디오를 사용하기 시작했고 지금도 여전히 많은 개발자들의 선택을 받고 있습니다. 그리고 2015년에는 앞서 설명드린 이클립스 안드로이드 개발 지원을 종료하게 됩니다. 결국은 여러분이 안드로이드를 개발하고 싶다 하면 선택지는 안드로이드 스튜디오 뿐이 존재하지 않게 됩니다.
열린 생태계를 위한 노력
안드로이드는 열린 생태계를 지향합니다. 그 덕분에 Mac OS에서도 안드로이드 스튜디오가 제공되고 안드로이드 어플 개발이 가능합니다. 참고로 IOS 어플은 Mac OS에서만 가능합니다. 이러한 점은 안드로이드 개발을 좀 더 쉽게 다가갈 수 있게 만들어줍니다. 비싼 맥 컴퓨터가 없어도 집에 있는 원도우 컴퓨터로 즉시 개발이 가능하니깐 말이죠. 그래서 아이폰과 안드로이드를 동시에 공부하고 싶은 개발자들은 보통 맥 OS가 설치된 비싼 맥 컴퓨터를 구매해야겠죠.
그리고 어플을 만들었다면 출시를 해야 합니다. 그런데 여기에서도 큰 차이가 발생합니다. 안드로이드 앱을 구글 플레이에 등록하기 위해서는 개발자 계정을 등록해야 하는데 등록 수수료는 단돈 25$입니다. 한 번만 결제하면 평생 개발자 계정을 유지할 수 있습니다. 하지만 애플의 정책은 조금 더 비싼 값을 치르게 합니다. IOS앱을 앱 스토어에 등록하려면 역시 개발자 계정을 등록해야 하는데 등록 비용만 99$입니다. 연간 비용입니다. 즉 매년 이 큰 금액을 결제해야 합니다. 기업 입장에서는 작은 비용일 수 있지만 개인 개발자에게는 부담이 되는 금액입니다. 그리고 등록에는 약 3주간의 대기 시간까지 소요됩니다. 이처럼 녹색 깡통 로봇 안드로이드 어플은 좀 더 쉽게 접근하여, 누구나 쉽게 개발할 수 있도록 노력하고 있습니다.
안드로이드를 공부할 수 있는 방법은
매력적인 안드로이드의 매력에 푹 빠지신 분은 이제 어플을 만들어보고 싶은 마음도 생겼을 거라 믿습니다. 하지만 이 책에서는 안드로이드 기술서가 아니므로 소스코드 부터 상세하게 안내해 드릴 수 없음이 아쉽습니다. 하지만 안드로이드를 배울 수 있는 방법 정도는 알려드릴 수 있을 것 같습니다. 워낙 많은 책과 동영상 강의들이 넘쳐나지만 개인적으로 추천하는 곳은 바로 이곳입니다.
바로 안드로이드 홈페이지에 있는 공식 커리큘럼 과정입니다. 안드로이드를 만든 회사가 직접 만든 강의입니다. 내용의 신뢰도가 높으며 비용 결제 없이, 로그인 없이 사용이 가능합니다. 단점이 있다면 일부 번역되지 않은 동영상 등이 있지만 이는 유튜브의 자막 자동번역 기능을 통하면 어느 정도 해석이 가능합니다. 또 다른 단점은 공식 문서는 딱딱하고 불친절하다는 것입니다. 그래서 좀 더 친절하고 친숙한 강의를 원하시면 코드 강의로 유명한 동영상 사이트 유데미와 인프런에서 가장 인기가 높은 강의를 선택해 보는 것도 방법입니다.
안드로이드를 조정하는 여러분
자 이제 안드로이드 어플을 만들기 위해서 준비할 재료입니다. 바로 용기입니다. 어플을 만든다는 건 사실 쉬운 일이 압니다. 코딩의 기본부터 열심히 배워야 합니다. 하지만 누구나 만들 수 있게 구글에서 도구부터 교육까지 모든 걸 다 준비해 두었습니다. 여러분의 노트북과 스마트폰 기기 그리고 용기까지 갖춘다면 여러분은 벌써 안드로이드 개발자가 될 준비가 된 것입니다.
고코더 님이 브런치에 게재한 글을 편집한 뒤 모비인사이드에서 한 번 더 소개합니다.
모비인사이드의 뉴스레터를 구독해보세요