도서의 특징

13년 동안 세상은 너무 많이 바뀌었습니다. 안드로이드 초기 버전에서 배웠던 많은 지식이 이제는 더 이상 통하지 않습니다. 몇몇 기술들은 과도기라서 어떻게 다루어야 할지 알 수 없는 경우도 있습니다. 코루틴과 플로우 등의 기술은 정리된 자료를 찾기도 어렵습니다. 제가 처음 비동기 처리에 사용했던 AsyncTask와 같은 도구들은 이제는 더 이상 유효하지 않습니다. 과거 구글 문서에는 손수 LRU 캐쉬를 만들며 이미지를 다운로드하는 샘플이 있었습니다. 이제는 아무도 이미지를 수작업으로 다루지 않습니다. 글라이드, 레트로핏, 대거와 같은 우수한 써드 파티 도구들은 안드로이드 개발의 표준이 되었습니다. 10년 전에, 아니 5년 전 서적에 있던 참고 자료들은 더 이상 의미가 없습니다.
이 시점에서 안드로이드 개발에 참여하려는 사람들에게 무엇을 전달해야 좋을지는 어려운 고민입니다. 안드로이드의 기본적인 개념은 당연히 소개해야 합니다. 하지만 어떤 부분들은 더 이상 사용되지 않는 것들도 많아 트렌드에 맞는 방식을 소개할 필요가 있습니다. 이 책은 글라이드, 레트로핏과 같이 일상화된 도구들은 기본으로 포함하였습니다. 데이터 바인딩, 라이브 데이터 등 구글에 의해 최근 표준이 된 개념들도 다루어야 한다고 생각했습니다. 그 외에도 아직은 낯선 개념이지만 코루틴, 채널, 플로우는 1~2년 내에 안드로이드 개발에 필수적인 개념이 될 것이기 때문에 지금 소개하는 것이 적절할 것입니다. 코틀린 언어가 점차 대세가 되고 있지만 코틀린 언어와 자바 언어를 같이 소개하는 것이 맞을지 코틀린 언어로 알리는 것이 맞을지는 큰 과제였습니다. 아직까지 코틀린을 모르는 개발자들도 많이 있기 때문에 이 책에서는 자바와 코틀린 코드를 같이 쓰기로 결정했습니다. 동기화코드에서 코틀린에서만 사용할 수 있는 새로운 개념을 사용했기 때문에 해당 섹션에서는 코틀린 코드만 소개한 점이 아쉽습니다.
다양한 시도를 한 이 책이 여러분의 안드로이드 개발 시작에 도움이 되길 진심으로 바랍니다. 이 책에서 소개하고 싶었던 개념과 관행들이 여러분의 개발 스택의 토대가 되고 많은 개발 지식들을 쌓아 가는데 도움이 되길 기원합니다. 많은 것을 선택해야 했었고 집필 대상이 살아 움직이며 변화했었습니다.

상세이미지

안드로이드 앱 프로그래밍 도서 상세이미지
목차

01장 안녕? 안드로이드
1.1 안드로이드 스튜디오 설치

02장 간단한 UI
2.1 텍스트 뷰
2.2 버튼
2.3 에디트 텍스트
2.4 이미지 뷰

03장 레이아웃
3.1 RelativeLayout
3.2 LinearLayout
3.3 FrameLayout
3.4 GridLayout
3.5 CardView

04장 툴바
4.1 툴바
4.2 툴바 스타일링
4.3 툴바 버튼
4.4 앱바 레이아웃
4.5 컬랩싱 툴바

05장 데이터 바인딩
5.1 간단한 데이터 바인딩
5.2 바인딩 어댑터

06장 리사이클러 뷰
6.1 리사이클러 뷰
6.2 아이템 데코레이션
6.3 페이징 라이브러리
6.4 페이징 라이브러리와 데이터 바인딩
6.5 네트워크의 이미지 처리하기

07장 액티비티
7.1 액티비티 생명주기
7.2 액티비티들
7.3 생명주기와 뷰 모델
7.4 네트워크, 이미지, 뷰 모델

08장 코루틴(코틀린 전용)
8.1 코루틴
8.2 네트워크, 이미지, 코루틴
8.3 채널과 플로우

09장 프래그먼트
9.1 프래그먼트와 수명 주기
9.2 프래그먼트와 액티비티 상호 작용하기
9.3 프로그래밍으로 프래그먼트 추가하기
9.4 프래그먼트 교체

10장 리소스
10.1 포트레이트와 랜드스케이프
10.2 디멘션과 스트링 리소스

11장 데이터 스토어
11.1 쉐어드 프리퍼런스
11.2 데이터베이스

12장 커뮤니케이션
12.1 브로드캐스트 리시버
12.2 인텐트 서비스

13장 전환
13.1 쉐어드 엘리먼트 전환

14장 머터리얼 컴포넌트
14.1 플로팅 액션 버튼
14.2 스낵바

15장 커스텀 뷰
15.1 뷰의 확장
15.2 뷰 그룹

16장 위치 정보
16.1 FusedLocationAPI

17장 알림
17.1 가장 간단한 알림

18장 안드로이드 10 그 이후
18.1 안드로이드 11 개발 버전