2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

기타/도서리뷰

[나는 리뷰어다] 이것이 안드로이다 with 코틀린

원당컴1 2022. 2. 14. 20:59

 

소개

코틀린은 2017년 구글이 안드로이드 공식언어로 채택한 언어입니다.

코틀린은 자바로 프로그램을 작성하기 위해서 10줄 가까이 되는 코드가 세줄의 코드로 표현 할 수 있는 것과 같이 간결해 집니다.

이러한 코틀린은 자바와 100% 상호 호환되는 장점을 가지고 있으며 객체지향 프로그래밍 언어이면서 함수형 프로그래밍 언어라는 특징을 가지고 있습니다.   

이 책에서는 기존의 코틀린 언어의 기능 외에도 다음과 같은 기능들을 새롭게 다루고 있습니다.

  • 젯팩 - 기기별/안드로이드 버젼별로 다른 코드를 작성해 왔던 문제를 해결 하기 위해 모든기기에서 일관되게 동작하는 젯팩 라이브러리에 대해 다룹니다.
  • 뷰바인딩 - 자바에서 전통적으로 사용되는 findViewByID 에서 코틀린 익스텐션으로 대체 되었던 뷰에 대한 접근 방식이 코틀린 1.4.20 부터 폐기 됨에 따라 이것을 개선한 뷰바인딩 방법에 대해 다룹니다.
  • 코루틴 - 백그라운드 처리를 위해 사용되던 스레드를 경량화환 코루틴이 제공됨에 따라 이러한 코루틴 사용 방법에 대해 다룹니다.

이러한 기능들은 코틀린 언어의 문법이 변화되는 부분을 깔끔하게 짚어 주는 것이 아닌가 싶네요. 

 

특징

1. 이 책은 안드로이드 프로그램을 처음 접하는 분들이 쉽게 접근할 수 있도록 안드로이드 설치 방법부터 단계별로 설명을 하고 있습니다.

2. 3장에서는 코틀린을 처음 접하는 분들을 위해 코틀린의 문법을 정리해 주었으며 4장에서는 안드로이드 프로그래밍을 위한 위젯과 화면구성하는 방법, 그리고 액티비티 및 뷰등을 사용하는 방법등을 다루고 있습니다.

3. 안드로이드 프로그래밍을 구현 할때 안드로이드 OS에 접근하기 위한 권한때문에 문제가 발생하는데 6장에서는 이러한 권한 접근 방법에 대해 자세히 다루고 있으며 7장~8장을 통해 안드로이드 앱 프로그래밍에서 필수인 데이터를 저장하기 위한 SharedPreferences 와 SQLite 데이터베이스등을 다루고 있습니다. 이러한 데이터 저장공간은 앱을 만드는데 가장 필수적인 요소인데 이러한 관계형데이터베이스를 다루는 방법과 SQLite를 좀더 구조적으로 접근 할 수 있는 Room을 통해 접근할 수 있는 방법을 익힐 수 있습니다.

4. 9장에서는 카메라앱을 호출하여 사진을 촬영하고 이미지를 미리보기하는 방법 및 갤러리의 이미지를 미리보기 하는 앱을 구현하면서 안드로이드 6.0 이후부터 카메라관련 작업도 위험권한으로 분류되어 부가적인 처리를 해 주어야 하는 부분등을 살펴 봅니다.

5. 10장에서는 스레드의 개념을 살펴 보고 스레드와 코루틴의 사용법등을 배울수 있습니다.(코루틴은 서브루틴 방식으로 메모리를 소모하지 않기 때문에 스레드 보다 가볍고 또한 다른 처리를 중단 시키지 않고 정지하는 형태로 처리 할 수 있습니다. 코루틴은 안드로이드 4.1 버젼에는 내장되어 있지만 4.2버젼 부터는 의존성을 추가해야 합니다.)

코루틴은 launch 로 시작한다.
코루틴을 이용해서 이미지 다운로드해서 이미지를 보여주는 예

6. 11장에서는 백그라운드에서 실행되는 서비스와 콘텐츠리졸버의 개념을 이해하고 구현하는 방법을 익힐 수 있습니다.

7. 12장에서는 구글맵을 활용하여 소스코드에서 카메라 이동방법등을 활용해서 서울시 도서관 지도앱등을 제작하면서 API 사용법 등에 대해 다루어 봅니다.  

 

 

서평

안드로이드 앱을 처음 접하는 초보자라고 하더라도 하나씩 따라서 코딩을 하다 보면 하나의 프로젝트를 완성해 볼 수가 있고 또한 이런 기능들을 활용하면서 또 다른 프로젝트를 구상해 볼 수 있는 코틀린의 기본이 되는 책인것 같네요.

마지막 까지 따라서 구현을 하면 실시간 채팅앱을 만들어 볼 수 있으며 이러한 동작들이 어떻게 이루어지는지를 깨닫게 되면 자신이 원하는 프로젝트를 구현해 볼 수가 있을것 같습니다.

그리고 현재 코틀린을 다루어 보면서 코틀린익스텐션 기능이 사라져서 당황하신 분들이라든가 혹은 젯팩이나 코루틴 기능에 대해 좀더 자세히 알고 싶은 분들도 이책을 통해서 도움을 받으실 수가 있을것 같아요~

초보자라면 프로그래밍 언어가 해마다 달라지고 예전 버젼의 서적으로 공부하다 보면 달라져 있는 부분들 때문에 컴파일이 안되고 에러를 만나면 어떻게 해결해야 할지 몰라 막막해 지는 경우가 많은데요~

최대한 최신 버젼에서 테스트가 완료된 서적을 이용해서 공부 한다면 이러한 에러를 만나는 경우가 없기 때문에 개념을 익히는것이 훨씬 수월 할것으로 생각 됩니다.

이 책을 읽으면서 혹시라도 궁금한 점이 있다면 커뮤니티(https://flow9.net/)를 이용해서 해결 할 수도 있고 질문과 답변을 얻을 수도 있을것 같네요.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기