[신간]아이폰 쿨 프로젝트

고급 개발자를 위한 살아있는 아이디어

일반입력 :2010/06/29 18:15

'아이폰 쿨 프로젝트(게리 버넷 외 지음, 류정원 옮김, 지앤선 출판, 2만2천원)'는 게임, 네트워크, 멀티쓰레딩, 인터페이스 등 특정 분야에서 여러해 경험을 쌓은 전문 개발자 7명이 모여 아이폰 애플리케이션을 만드는데 도움이 될만한 정보를 알려주는 책이다.

이미 애플에 아이폰 개발자로 등록됐고 애플리케이션을 개발한 경험이 있는 이들을 독자로 삼는다.

기술 감수를 맡은 글렌 코울은 (독자들이) 다음 단계의 힘찬 발걸음을 내딛기 위해 도움이 되는 것을 찾고 있을 것이다라며 아마도 '시작하세요 아이폰 프로그래밍(위키북스 출판 번역서)' 책을 사서 모든 프로젝트를 충실히 실행해 보고 대부분의 내용을 이해했을 것이라고 전제한다. 각 장을 맡은 개발자들로서 게이머를 위해 준비한 프로젝트 탐구, 네트워크 프로토콜 설계, 다중 스레드, 복잡한 제스처와 물체 이동 및 회전, 복잡한 제스처와 물체 이동 및 회전, 스트리밍 오디오, 애플리케이션을 만들기 위한 통합적 개발기술 등을 주제로 다뤘다.

독자들은 상용화된 SW 프로젝트에서 쓰인 코드를 직접 소개한 저자들의 설명을 통해 아이폰과 아이팟 터치에서 가능한 기술과 방법론을 이해하게 된다.

역자 류정원은 다른 책들처럼 1장부터 읽어 나갈 필요는 없다며 독자가 흥미를 느끼는 주제부터 편하게 읽는 것을 권한다. 애플 개발툴 X코드(Xcode)로 개발하는 것에 익숙하지 않다면 오히려 프로젝트 생성부터 자세히 안내하는 마지막 장을 먼저 읽는 것이 좋을 수도 있다는 설명이다.

퍼즐게임 프렌직(Frenzic)을 개발한 볼프강 안테(1장)는 '포믹'이라는 시험용 게임을 만들어가는 과정을 통해 타이머, 애니메이션, 인공지능 등 게임을 흥미롭게 만드는 요소를 다룬다.

마이크 애시(2장)는 네트워크 프로토콜을 설계하는 방법을 설명하고 '피어 투 피어(P2P)' 애플리케이션에서 UDP를 사용하는 예를 소개한다.

게리 버넷(3장)은 화면에 보이지 않는 상태로 다른 일을 수행하면서 사용자가 입력하는 것을 처리하는 '멀티스레딩'에 대해 다루고 주의사항을 알려준다.

매튜 캐니스 로젠필드(4장)는 키노트 제어 애플리케이션 '스테이지핸드'를 개발하면서 사용자 입력이 사용된 과정과 멀티터치 인터페이스같은 복잡한 제스처를 한번에 인식하게 만드는 요령을 설명한다.

벤자민 잭슨(5장)은 2D 게임용 오픈소스 라이브러리 'cocos2D'와 충돌 움직임 등을 처리하는 강체물리학 오픈소스 라이브러리 'Chipmunk'를 소개하고 하키 게임 '아케이드하키' 코드를 설명해 준다.

닐 믹스(6장)는 스트리밍 오디오를 처리할 때 점검과 디버깅을 위해 필요한 지식을 전수한다.

관련기사

스티븐 피터슨(7장)은 다른 저자들이 선보인 기술을 아울러 코어 로케이션, 네트워킹, XML, XPath, SQLite 등을 통합 활용하는 방법을 알려준다.

입문단계를 지난 책이라고 해서 난이도가 아주 높은 해커급 개발자를 위한 책은 아니다. 역자는 아이폰 개발은 아직 역사가 짧고 윈도 및 자바 진영에 비해 상대적으로 개발자가 극히 적다며 아직 시중에는 고급 수준의 책은 커녕 이 책처럼 중급 수준도 보기 어렵다고 말한다.