본문 바로가기
IT 도서 리뷰

[서평] 실무에 바로 적용하는 안드로이드 프로그래밍 제4판(제이펍) Android Programming, the Big Nerd Ranch Guide - 코틀린, 안드로이드 스튜디오

by 새봄아빠 2021. 4. 15.

ANDROID PROGRAMMING, THE BIG NERD RANCH GUIDE

실무에 바로 적용하는 안드로이드 프로그래밍 제4판

(크리스틴 마시캐노, 브라이언 가드너, 빌 필립스, 크리스 스튜어트 지음, 심재철 옮김, 제이펍)



오래 전부터 안드로이드 앱을 만들어보고 싶어서 여러 권의 책을 읽어보았습니다. 주로 자바에 관련된 책들이었는데 꽤 여러 권의 책들을 읽었지만 아직 변변찮은 결과물을 하나 만들어보지는 못했습니다. 시간은 흐르고 버전들은 계속 올라가는 데 예전에 가지고 있던 책들만으로는 한계를 많이 보게 되었습니다.

 

최근들어 코틀린이라는 언어를 알게 되었고 이에 관련한 안드로이드 개발 책들도 살펴보게 되었습니다. 그러던 중에 지금 서평을 작성하고 있는 "실무에 바로 적용하는 안드로이드 프로그래밍 제4판"을 만나게 되었습니다.

 


이 책에서 느낀 가장 큰 특징

이 책을 읽고 공부하면서 가장 크게 느낀 특징은 기존의 다른 개발 입문서들과 목차 순서가 꽤 다르다는 것이었습니다. 보통의 책들은 

 

  • 개발환경 구성
  • 기본적인 문법 (변수 > 조건문 > 배열 > 반복문 > 함수 > 클래스 등)
  • 화면 구성
  • 등등등...

 

이런 식으로 프로그래밍 언어 책의 약간 전형적인 틀이 있는데, 이 책은 그 순서가 완전히 달랐습니다. 

 

큰 제목만 목차 순서대로 몇 개 적어보면 다음과 같습니다.

 

  • 처음 만드는 안드로이드 애플리케이션
  • 안드로이드와 모델-뷰-컨트롤러
  • 액티비티 생명주기
  • UI 상태 유지하기
  • 안드로이드 앱의 디버깅
  • 두 번째 액티비티 만들기
  • 안드로이드 SDK 버전과 호환성
  • UI 프래그먼트와 프래그먼트 매니저
  • RecyclerView로 리스트 보여주기
  • 등등등

 

이 것은 이 책의 독특한 진행 방식 때문입니다. 다른 프로그래밍 언어 책들과 달리 이 책은 코틀린 언어를 순서대로(?) 가르쳐주지 않습니다. 일단 바로 앱 개발을 시작합니다. 바로 실전이죠! 이게 이 책의 아주 큰 장점인 것 같습니다. 책 전반에 걸쳐 7개의 프로젝트를 완성하면서 실제적인 앱 개발의 과정을 경험하며 프로그래밍 언어를 배워나갑니다. 아무래도 빅 너드 랜치(Big Nerd Ranch)에서 안드로이드 프로그래머들을 교육하며 쌓인 노하우를 기반으로 이 책이 저술되었기 때문이 아닌가 생각됩니다. (* 단점이라면 코틀린 언어에 대한 기본적인 배경 지식은 좀 필요합니다. 또는 자바나 객체지향 프로그래밍에 대해서도 어느 정도 알고 있다고 가정하고 내용이 진행됩니다.)

 

첫 번째 프로젝트는 GeoQuiz라는 간단한 퀴즈 앱을 만들어봅니다. 이 앱을 만들면서 기본적인 화면 구성, 액티비티 생명주기, UI 상태 유지하기, 두 번째 액티비티 만들기 등의 개념들을 익히게 됩니다. 앱을 만드는 과정에서 나타나는 문제점들을 보여주고 그 문제를 해결하기 위한 솔루션을 가르쳐주며 한 단계씩 새로운 개념을 알려줍니다. 다시 말하면 왜 그 개념이 생겨나게 되었는지를 설명해 주는 것이지요. 이를테면 화면을 회전시켰더니 앱이 초기화되는 문제를 보여주고 생명주기에 대한 개념을 설명해주며 해결책을 제시해 주는 것이지요.

 

 

두 번째로 만드는 앱은 CriminalIntent 라는 앱인데, 사무실에서 일어나는 범죄(?)의 상세 내역을 기록하는 앱입니다. 이 앱은 앞으로 총 11개의 장에 걸쳐 완성되는 복잡한 앱입니다. 이 앱을 개발하며 프래그먼트, 리스이클러뷰, 레이아웃, 데이터베이스와 Room 라이브러리, 프래그먼트 간의 이동, 대화상자, 앱바, 암시적 인텐트, 사진 찍기 등 앱 개발에 필요한 각종 개념들을 총망라해 가르쳐줍니다. 마치 내가 만들고 싶은 앱을 구상하고 여기에 필요한 기능을 구현하는 방법을 인터넷에서 찾아 활용하는 방식과 비슷하다고 느껴집니다. 그러다보니 훨씬 실제적이고 실용적인 느낌을 받습니다.

 

 

제가 구상했던 앱은 아주 간단한 기능이기 때문에 이 정도까지만 공부해도 충분히 구현이 가능하지 않을까 싶습니다. 그만큼 문법 기반으로 쓰여진 책들에 비해 효율적으로 공부할 수 있다는 느낌을 받았습니다. 이후에 다섯 가지의 앱을 더 만들어보며 데이터 바인딩, 오디오 재생, 스타일과 테마, 백그라운드 캐스크, 공유 프리퍼런스, 웹뷰, 커스텀 뷰 등의 개념을 다질 수 있습니다. (* 각각을 일일이 설명하려면 서평이 너무 길어질 것 같아 생략합니다!)


또 다른 특징들

(1) 일단 (당연히) 최신 버전을 소개하고 있습니다.

안드로이드 스튜디오 4.2와 Jetpack 라이브러리와 컴포넌트들에 대해서도 자세히 설명이 되어 있습니다. 새롭게 추가된 좋은 기능들을 마음껏 활용해볼 수 있습니다.

 

 

(2) 개념에 대한 소개도 친절하게 잘 되어 있습니다.

다양한 도표들을 활용하여 개념을 이미지로 확인할 수 있도록 잘 돕고 있습니다. 개념 이해를 굉장히 강조합니다.

 

 

(3) 궁금증 해소하기와 챌린지

챕터 마지막에 궁금증 해소하기를 통해 추가적으로 알아야 할 내용들을 덧붙여 소개합니다. 그리고 챌린지를 통해 독자가 스스로 앱을 수정하며 연습할 수 있도록 도전 과제를 줍니다. 챌린지 과제는 생각보다 쉽지는 않지만 이를 통해 안드로이드 API 문서도 찾아보며 많은 것들을 연습해볼 수 있습니다.

 

 

출판사에서 제공하는 github을 통해 소스코드를 다운 받을 수도 있습니다.

 


총평

예상보다 재미있는 책을 만났습니다. 기존 문법책들은 문법 내용을 체계적으로 다루다보니 양도 많고 자칫 지루하게 느낄 수 있습니다. 하지만 이 책은 과감하게 순서를 바꿔 프로젝트를 완성해가며 문법 체계를 배워나갑니다. 하나씩 앱이 완성되는 과정을 보며 실제 앱 개발의 과정을 간접적으로나마 체험해볼 수도 있어서 좋았습니다. 결국 앱 개발은 디버깅 싸움인데 그 과정을 경험해보는 것이 흥미로웠습니다.

 

 

단점이라고 생각되는 것은 앞에서도 기술했듯이 코틀린이나 기타 다른 객체지향 언어에 대한 기본적인 개념을 가지고 있지 않다면 조금 어려울 수도 있겠다는 생각이 듭니다. "빅 너드 랜치의 코틀린 프로그래밍" 같은 코틀린 기본서를 함께 읽는다면 더욱 금상첨화일 것 같습니다.

 

안드로이드 개발에 관심있는 분들이라면 처음배우는 입문자에게도, 안드로이드의 새 라이브러리를 익히고자 하는 기존 개발자들에게도 도움이 될 책이라고 생각됩니다. 강력하게 추천합니다^^


** 이 서평은 제이펍(Jpub) 출판사 <IT 전문서 리뷰어> 활동을 위해 책을 제공받아 작성된 서평입니다.

** 개인적으로 앱 개발이 하고 싶어 독자의 입장으로 꼼꼼하게 책을 읽었으며 느낀점들을 최대한 객관적으로 작성하려고 노력했습니다.


YES24에서 책 구경하기

bit.ly/3uPfedV

 

실무에 바로 적용하는 안드로이드 프로그래밍

아마존 안드로이드 서적 베스트셀러!7개의 앱을 직접 따라 만들면서 배우는 실전 안드로이드 프로그래밍!책 한 권의 과정을 다 마치면 어느새 나도 안드로이드 개발자!이 책은 빅 너드 랜치(Big N

www.yes24.com

댓글0