반응형

- 이 포스트는 제 네이버블로그에 있던 내용을 재 포스트한 것입니다.

- 추후 여유가 있을 때 수정할 부분들은 수정할 예정입니다.


 본 강좌는 간단한 게임 어플 예제를 학습하여 안드로이드 어플을 제작할 수 있도록 도움이 되고자 시작하게 되었습니다. 

좀 거창하게 "안드로이드 게임 어플 제작" 이라고 했지만 전문게임제작회사에서 개발하고 있는 화려한 그래픽의 게임은 아니고 단순하고 아기자기한 캐릭터를 이용한 캐주얼 게임을 제작하고자 합니다.

 

 스마트폰의 성공적인 보급으로 인해 모바일 어플개발의 전망은 상당히 좋아졌죠. 물론 상당한 인력들이 양성되면서 현재 어플 개발 회사에 취업할 수 있는 경쟁력은 초기보다 약해졌지만 여전히 상당 수의 업체에서 모바일 어플 시장으로 영역을 확대하고 있고 결정적으로 1인 창조기업이 가능해 졌다는 것이 가장 큰 매력이라고 생각합니다. 분명 프로그래밍 분야에서 가장 효용성이 좋은 skill은 어플 개발 능력이라고 보여집니다.

 

 현재 국내에 보급된 스마트 폰의 운용체제는 크게 3가지로 구분되어 있습니다. 국내에서 삼성, LG등 가장 많은 기종이 선택한 구글의 안드로이드, 세계적으로 선풍적인 인기를 달리고 있는 애플 아이폰의 ios,  MS사의 자존심 회복을 노리는 윈도우7, 그 밖에 여러종류의 운영체제가 있지만 국내에서는 별다른 재미를 보지 못하고 있죠.

 

1. 구글 안드로이드 운영체제


 

 

운영체제 개발사 : 구글
스마트폰 제조사 : 삼성전자, LG전자, 모토롤라, 구글, HTC 등

적용 사례 :  갤럭시(삼성), 옵티머스(LG), 모토로이(모토롤라), 디자이어(HTC) 등

 

2. 애플 iOS 운영체제 


 

 

운영체제 개발사 : 애플
스마트폰 제조사 : 애플

적용 사례 : 애플 아이팟, 아이폰3Gs, 아이폰4

3. 윈도우폰 운영체제

 


 

 

운영체제 개발사 : 마이크로소프트

스마트폰 제조사 : 삼성전자, LG전자, HTC 등 
적용사례 : 옴니아7 시리즈(삼성), 옵티머스7(LG), HD7(HTC) 등

[네이버 캐스트 인용]

 

 각각의 운영체제마다 개발 언어를 달리 두고 있습니다. 안드로이드는 자바, 아이폰은 Object-C, 윈도우폰은 C#.

개발자로서는 참 짜증나는 일이 아닐 수 없죠. 그 중 아이폰 개발을 위해서는 맥킨토시 PC가 필요하죠. -_-;

아마 이 글을 읽고 있는 대부분의 여러분들도 저처럼 윈도우 PC를 쓰고 계시겠죠. 그렇다고 비싼돈을 들여 맥 PC를 살수도 없고요...

 

뭐. 이런저런 핑계에서 비롯되었지만 현 상황에서 우리가 접급할 수 있는 가장 손쉬운 운영체제는 안드로이드 겠죠. 다행이 안드로이드 쪽의 어플 개발이 국내에서 가장 많은 비중을 차지하고 나중에 개발한 어플을 마켓에 등록할 때도 아이폰보다 저렴한 돈으로 할 수 있으니 어쩔 수 없는 다소 "강요에 의한 최선의 선택(?)"으로 안드로이드 어플 개발자가 되어 보겠습니다.

 

 본 강좌는 안드로이드 어플개발업체로 취업하고자 하는 목표를 가진 분에게도 도움이 되고 개인이 1인 또는 소규모의 개발 회사를 창업해서 어플 개발자가 되기위한 분에게도 도움이 되고자 합니다. 물론 거창하게 개발회사 창업이라고 했지만 안정적으로 다니는 회사를 박차고 나와서 사업을 하거나 취업도 하지않고 방구석에서 컴퓨터만 붙잡고 있을 수 있는 분이 얼마나 있겠습니다. 본 강좌를 쓰고있는 본인 또한 현재 프로그래밍 교육기관에서 강의를 하는 한 사람의 직장인입니다. 다행히 프로그램 개발이라는 것이 단순히 PC하나만 있으면 별도의 공간없이도 충분히 가능하기 때문에 직장생활을 하면서도 도전할 수 있다는 것이죠.

 

 본 강좌는 프로그램을 처음 다루어 보시는 분에 맞추어져 있지는 않습니다. 자바를 잘은 못하더라도 한번 학습한 적인 있거나 자바가 아니더라도 C계열의 언어를 한번이라도 학습한 적인 있으신 분에 맞추어져 있습니다. 즉, 자바의 기본 문법에 대해 세세하게 설명하면서 강좌를 진행하지는 못할 것 같다는 것입니다. 안드로이드 어플 개발을 위해서 자바 능력은 어쩔 수 없는 필수 조건입니다. 그렇다고 완전히 자바의 모든 문법을 사용할 수 있어야 한다는 것이 아닙니다. 제가 학생들을 가르치면서 다소 안타까운 것이 프로그램 언어를 열심히 배우고 나서 본인이 실력이 매우 형편없다고 느끼는 학생을 보는 겁니다. 물론 몇개월 배웠다고 자바를 실무경력자들 만큼 잘하기는 어렵죠. 하지만 그들도 처음부터 잘하지는 못했고 회사에 입사할 때 화려한 기술을 가지고 입사하지 않았다는 겁니다. 자바의 문법을 열심히 배웠다고 실무 바로 적용할수 있는 센스를 가진 사람은 거의 없다고 보여집니다. 

 

 쉽게 말해 덧셈을 열심히 배워서 더하기를 할 수 있게 되었고, 구구단을 열심히 배워서 구구단을 익힌 사람에게 갑자기 100자리의 곱셈을 하라고 하면 덧셈도 알고 구구단도 알고있지만 정작 둘을 이용해서 곱셈을 하지 못하는 원리와 같습니다. 하지만 이런 사람에게 곱셈의 원리를 알려주고 연습하면 수월하게 100자리의 곱셈을 하고 나아가 알려주지 않아도 10000자리의 곱셈도 할 수 있게됩니다. 이 과정에서 구구단이나 덧셈을 완전히 못해도 상관없습니다. 곱셈의 원리를 배우면서 구구단이 잘 기억나지 않으면 그 때 다시 보면 됩니다. 구구단을 완전히 외울때까지  곱셈 공부를 시작하지 않으면 점점 시간은 길어지고 정작 하고자 하는 곱셈은 시작도 하기전에 포기하게 됩니다.

 

 프로그램도 마찬가지 입니다. 처음 문법을 익히고 나면 이 많은( 전 별로 없다고 생각하는?) 문법들을 어떻게 써먹어야 하는지 막막합니다. 사실 내가 얼마나 익히고 있는지도 반신반의죠..

 

 저도 안드로이드를 처음 시작할 때 자바의 모든 문법을 잘 쓰지는 않았던것 같습니다. 그런데 안드로이드 어플 개발을 하다보니 자주 쓰는 자바의 문법이 있고 오히려 자바를 학습할 때 그렇게 이해되지 않던 영역이 번쩍! 하면서 이해됐던 경험도 있습니다.

 

 자!! 좀 장황하게 설명드렸는데 결론은 프로그래밍 언어(가급적 Java)를 학습한 적인 있다면 우선 안드로이드를 시작하면서 필요한 자바 문법이 있다면 그 때 그때 찾아가면서 학습에 도전하시기 바랍니다. 최대한 저는 여러분들이 매우 미약하게 프로그래밍 능력이 있다는 전제 하에서 강좌를 이어 가보도록 하겠습니다. 여기서 미약하게는 적어도 기본 제어문이나 연산자는 별도의 설명없이도 이해 할 수 있어야 한다는 것입니다. 사실 얼마나 잘 할 수 있을지는 자신없네요.(-_-);

 

참고 : 저도 회사원이다 보니 다음 강좌를 언제 쓸 수 있다고 자신할 수 없다는 점 이해 바랍니다.

 

※ 제 강좌의 주요 예제는 "안드로이드 사이드"의 [게임개발]을 참고하였습니다.  http://www.androidside.com

반응형

+ Recent posts