미국 최고의 모바일 교육기관인 빅 너드 랜치(Big Nerd Ranch)의 안드로이드 강의 노하우를 기반으로 집필!
이 책은 빅 너드 랜치(Big Nerd Ranch)의 잘 알려진 안드로이드 훈련 캠프 과정의 노하우를 기반으로 집필되었다. 따라서 이 책을 통해서 최신 안드로이드의 핵심적인 개념을 배울 수 있고, API에 관한 명쾌한 설명과 더불어 직접 앱을 작성하면서 안드로이드 프로그래밍의 기초부터 고급 기법까지 배울 수 있다. 또한, 이 책은 오늘날 널리 사용되는 모든 안드로이드 버전과 호환될 수 있는, 앱 개발에 필요한 실제적인 기법을 가르치는 데 초점을 둔다.
책에서는 8개의 앱을 만들어 가는 과정을 친절하게 설명하고 있다. 따라서 여러분이 직접 코드를 작성하고 실행해 보면 안드로이드 프로그래밍 실력이 절로 향상되는 것을 느끼게 될 것이다. 각 장에 있는 내용 설명과 앱은 안드로이드 앱 개발을 시작하는 데 필요한 지식과 경험을 제공하기 위해 설계되고 테스트되었다.
이 책의 구성
이 책에서는 8개의 안드로이드 앱을 작성한다. 어떤 것들은 매우 간단해서 한 장으로 끝나지만, 또 어떤 것들은 더 복잡해서 여러 장에 걸쳐 만들어진다. 그중 가장 복잡하고 긴 앱은 13개 장에 걸쳐 개발된다. 모든 앱들은 저마다 중요한 개념과 기법을 가르치도록 설계되었으므로, 이 책을 읽으면서 앱을 작성하다 보면 어느새 여러분이 숙련된 안드로이드 프로그래머가 된 것을 느끼게 될 것이다. 8개 앱은 다음과 같다.
★ GeoQuiz: 안드로이드 프로젝트의 전체적인 구성, 액티비티, 레이아웃, 명시적 인텐트와 같은 기본적이고 핵심적인 내용들을 배운다.
★ CriminalIntent: 이 책에서 가장 큰 규모의 앱이며, 사무실에서 발생하는 불미스러운 일들을 기록하고 관리한다. 이 앱을 만들면서 많은 중요한 것을 배운다. 프래그먼트, 마스터-디테일 사용자 인터페이스, 메뉴, 카메라, 암시적 인텐트 등의 사용법을 배운다.
★ HelloMoon: 이 작은 앱에서는 프래그먼트, 미디어(오디오와 비디오) 재생, 리소스, 지역화에 대해서 배운다.
★ NerdLauncher: 안드로이드 시스템에서 앱을 시작시키는 커스텀 론처를 만든다. 그럼으로써 안드로이드의 인텐트와 태스크에 대해 자세히 배운다.
★ RemoteControl: 이 앱에서는 멋진 사용자 인터페이스를 만들기 위해 스타일, 상태 리스트 drawable 및 그 외 다른 도구들을 사용하는 방법을 배운다.
★ PhotoGallery: 사진 정보를 갖고 있는 플리커(Flickr) 사이트로부터 사진들을 다운로드하고 보여주는 플리커 클라이언트 앱이다. 이 앱에서는 안드로이드의 서비스와 다중 스레드 및 웹 서비스를 액세스하는 방법을 알려준다.
★ DragAndDraw: 이 간단한 앱에서는 터치 이벤트를 처리하고 커스텀 뷰를 만드는 방법을 배운다.
★ RunTracker: 이 앱에서는 GPS를 이용해서 우리가 이동한 경로를 추적 기록하고 지도에 보여준다. 위치 서비스, SQLite 데이터베이스, 로더, 구글 맵 사용법을 배운다.
추천사
“빅 너드 랜치에서는 수많은 개발자가 안드로이드 앱을 능숙하게 개발하는 데 필요한 교육 훈련을 제공하고 있다. 이 책은 그 교육의 진수를 모아놓은 것이며, 자신의 실력을 향상하고자 하는 누구에게도 큰 도움을 줄 것이다.”
_ 마이크 쉐이버(Mike Shaver), 페이스북의 모바일 엔지니어링 담당 임원
“안드로이드에 입문하려는 개발자는 물론이고 어느 정도 경험 있는 개발자도 꼭 봐야 할 책이다. 나는 이 책에서 보여주는 내용과 명쾌함에 감명을 받았다. 안드로이드의 쉽고 어려운 주제 모두를 똑같이 이해하기 쉽게 설명하고 있다.”
_ 제임스 스틸(James Steele), 『Android Developer’s Cookbook』 저자
저자 소개
빌 필립스(Bill Phillips)
Big Nerd Ranch의 안드로이드 강사이면서 소프트웨어 엔지니어다. 그는 Big Nerd Ranch의 호평받는 안드로이드 교육 훈련 캠프의 교재를 개발하였다. 빌은 모든 것을 깊이 탐구하고 이해하는 열정을 갖고 있으며, 다른 사람들도 그렇게 하도록 도와준다. 한가한 시간에는 독서를 하거나 피아노 연주를 즐겨 한다.
브라이언 하디(Brian Hardy)
소프트웨어 엔지니어이자 Big Nerd Ranch의 강사다. 그는 안드로이드와 iOS 및 Ruby 과정의 교재를 개발하였다. 모바일 앱을 가르치거나 개발하지 않을 때는 자전거를 타거나 소장한 음반을 듣곤 한다.
역자 소개
심재철
현재 프리랜서로, 데이터베이스/모바일 시스템 컨설팅과 강의를 진행하고 있다. 데이터베이스 및 객체지향 시스템 개발 프로젝트에 15년간 몸담았으며, 건설/금융 분야 애플리케이션 개발에도 참여했다. 대표 저/역서로는 『UML 사용자 지침서』, 『Thinking in JAVA 4/e』, 『이펙티브 자바』, 『SQLite 마스터 북(제2판)』, 『프로 오브젝티브-C 디자인 패턴』, 『세븐 데이터베이스: 만들면서 파악하는 NoSQL』 등이 있다.