이것이 안드로이드다 with 코틀린
(고돈호, 한빛미디어)
-
제목 : 이것이 안드로이드다 with 코틀린
-
저자 : 고돈호
-
발행 : 2020년 5월 1일
-
펴낸곳 : 한빛미디어(주)
-
한빛미디어에서 주관하는 나는 리뷰어다 활동으로 제공받은 책을 통해 작성된 서평입니다.
-
출판사에서는 책 외에 다른 어떤 것도 제공받지 않았습니다.
-
이 책을 읽고 느낀 점들은 서평단 활동과 상관 없이 책을 읽은 저의 주관적인 생각들을 솔직하게 적은 것입니다.
생각해보니 나도 개발자였네
2013년 11월, 지금 생각해보면 약간 무모한 도전을 했었다. 근무하고 있는 대안학교 홈페이지와 연동되는 안드로이드 어플을 만들어보자! 코딩의 코자도 잘 모르는 상태에서 무작정 책 한권을 구해서 따라해보았다.
오래전 일이라 잘 생각은 나지 않지만, 이클립스인가?를 설치해서, 자바 언어를 하나씩 공부해가며, 낮에는 학교일을 밤에는 코딩을 어찌어찌 하여 하나의 어플을 완성했었다. 지금 생각해보면 아주 조악한, 기능도 불완전한채 테스트 용으로 올려봤던 것 같다.
신기했다. 어찌되었든 개발자 등록도 했고, 어플도 심사가 통과되어(아직도 미스테리다, 이게 어떻게 통과되었지?) 등록도 되었다. 활성화 된 기기도 몇 개 있던 걸로 보아 누군가 설치도 했던 것 같다.
그 사실도 잊은 채 살다가 혹시나 하는 마음에 구글 개발자 사이트에 로그인을 해 보았다. 아직 개발자로 남아 있었다. 물론 어플은 업데이트가 되지 않아서 삭제되어 있지만... 나름 나도 안드로이드 어플 개발자였다구!!
다시 도전해볼까?
책장을 정리하다 한 쪽 구석에 나란히 꽂혀 있는 안드로이드 개발 관련 책들을 보며 문득 그때 일이 떠올랐다.
'한 번 다시 도전해볼까?'
두근두근 심장이 떨려왔다. 이 땅에 태어났으니(?), 내 어플 하나쯤은 남겨보고 싶었다!! 코로나 사태로 모두가 힘든데 어플 하나 만들어서 소소하게 용돈이라도 나오면 얼마나 좋을까?
그러던 중 좋은 기회가 생겼다. 한빛미디어에서 주관하는 "나는 리뷰어다" 활동 중에 이 책 "이것이 안드로이드다 with 코틀린"이란 책을 소개 받은 것이다. 책을 받았을 때 소감은 이랬다.
"오! 표지가 뭔가 멋진데? 그런데 코틀린은 뭐지?"
그냥 이 정도 수준이다. 코틀린이 뭔지도 모르는 그런 수준.... 과연 내가 이 책을 읽을 수 있을까?
이 책을 읽으면서
책을 천천히 읽어 내려갔다. 이 책에는 다음과 같은 내용들이 담겨 있었다.
PART 1 안드로이드와 코틀린
01 코틀린 안드로이드 이해하기
02 개발 도구 설치와 앱 실행하기
03 코틀린 사용을 위한 기본 문법
PART 2 안드로이드의 화면 구성과 생명 주기
04 위젯과 리소스 다루기
05 화면 구성하기
PART 3 안드로이드 프로그래밍
06 권한
07 파일 입출력과 SharedPreferences
08 데이터베이스
09 카메라와 갤러리
10 스레드와 핸들러, AsyncTask
11 서비스와 콘텐트 리졸버
12 구글 지도, 네트워크, Open API
Appendix A구글 플레이 스토어에 앱 출시하기
"PART 1 안드로이드와 코틀린"에서는 안드로이드 앱 개발을 위한 기본 셋팅과 기초 지식에 대하여 다루고 있다. "1장.코틀린 안드로이드 이해하기"에서는 안드로이드와 코틀린, 안드로이드 아키텍쳐와 과정들이 상세하게 기록되어 있다. 직접적인 코딩에 대한 이야기는 아니지만 안드로이드가 어떤 구조로 움직이는 지를 파악할 수 있었다.
이어서 "2장.개발 도구 설치와 앱 실행하기"에서는 본격적인 개발을 위해 개발 환경을 구축하는 방법을 알려준다. 이 책에서는 안드로이드 스튜디오(https://developer.android.com/studio)를 이용해서 개발을 진행한다. 다운로드 받고 설치하는 법, 기본 구성, 에뮬레이터와 반나면 반가운 "Hello, World!"를 만날 수 있다.
"3장.코틀린 사용을 위한 기본 문법"에서는 코틀린에 대한 기본적인 문법을 다루고 있다. 초보 수준이지만 다른 개발 언어(C, C++, Java 등)를 아주 일부 사용해본 경험은 있지만 코틀린은 정말 처음이다. 코틀린이라는 말도 굉장히 생소하게 느끼는 정도로 기초 지식이 전혀 없다. 그럼에도 천천히 읽어보면서 내용을 이해하기는 어렵지 않았다. (물론 연습해서 익숙해지는데는 시간이 더 필요하겠지만...) 변수와 상수, 조건문, 배열과 컬렉션, 반복문, 함수, 클래스 등 기본적인 코딩에 필요한 기초적인 문법들이 예제, 퀴즈와 함께 자세히 다뤄지고 있다.
일단 코틀린 문법을 어느 정도 파악하는 단계 까지는 도달했다. (아직 많이 부실하긴 하지만... 서평 작성 마치고 다시 꼼꼼히 실습을 하며 어플 개발에 도전해볼 예정이다!!)
이어서 "PART 2 안드로이드의 화면 구성과 생명 주기"에서는 위젯과 리소스를 다루는 법(4장.위젯과 리소스 다루기)과 액티비티, 레이아웃, 버튼 배치등 다양한 화면 구성(5장.화면 구성하기) 방법에 대해서 소개하고 있다. 오래 전에 구 안드로이드 버전으로 공부했을 때에 비해 엄청나게 다양한 기능들이 추가되었다. (라떼는 이런거 없었는데...)
지금까지 안드로이드 프로그래밍에 대한 기초를 다루었다면 "PART 3 안드로이드 프로그래밍"에서는 본격적인 프로그랭 기법을들 다룬다.
-
06 권한
-
07 파일 입출력과 SharedPreferences
-
08 데이터베이스
-
09 카메라와 갤러리
-
10 스레드와 핸들러, AsyncTask
-
11 서비스와 콘텐트 리졸버
-
12 구글 지도, 네트워크, Open API
-
Appendix A구글 플레이 스토어에 앱 출시하기
목차에서 알 수 있듯 안드로이드 어플에서 필수적인 기능들을 구현하는 방법을 소개하고 있다. 이전에 자바로 공부했을 때에도 애를 많이 먹었던 부분들인데 그때 보다는 조금 더 이해하기 쉬워진 것 같다. 그 때 빡쎄게 훈련당했던(?) 경험 때문일까? 형식을 달라졌을 지 몰라도 개념에 대해서는 잊혀진 내용들이 어느 정도 떠올랐던 것 같다.
이 책에서 좋았던 것은 내용을 설명하면서 예시로 만들었던 프로젝트들이 굉장히 실용적이고 재미가 있었단 점이다. DB를 사용하는 메모장 앱, 음악 플레이어 앱, 카메라돠 사진 앱, 오픈 API를 사용하는 서울시 도서관 앱, 타이머 앱 등을 만들면서 실제로 작동하는 걸 보니 재미가 있었다.
책을 다 읽었으니 이제는...
재미있게 책을 다 읽었으니 이제는 무엇을 해야 할까? 다시 어플을 하나 만들어보고 싶다는 생각이 불끈불끈 솟아 오른다. 그런데 항상 부딪히는 문제가 있다.
"뭘 만들지?"
기능을 공부하고 익히는 건 그렇게 어렵지 않을 수 있다. 그런데 어떤 것을 만들지를 상상하고 생각해내는 것이 어렵다. 이전에 만들었던 어플은 사용자가 굉장히 한정적이었다. 많은 사람들이 수시로 열어볼만한 어플은 어떤 것들이 있을까? 어떤 아이디어를 가지고 만들어봐야할까?
전쟁 나갈 준비는 되었다구요!! 아, 현기증 나!! ㅋㅋ
어플 만들어서 게시하고 다시 돌아오겠습니다!!!
전체 소감
읽기 쉽다고 할 수는 없지만, 내용이 알차고 풍부하게, 자세하게 담겨있다. 저자가 안드로이드 개발에 필요하다고 생각하는 중요한 이야기들을 꾹꾹 담아 놓았다는 느낌이 들었다. 이 책 한 권이면 코틀린의 기초 문법과 활용에서 부터 안드로이드 어플의 개발과 게시까지 필요한 것을 다 얻을 수 있다!!!
좋은 책 소개해주셔서 감사합니다!!