핵심만 골라 배우는 젯팩 컴포즈 (젯팩 컴포즈, 안드로이드 스튜디오, 코틀린으로 안드로이드 앱 개발하기)

핵심만 골라 배우는 젯팩 컴포즈 (젯팩 컴포즈, 안드로이드 스튜디오, 코틀린으로 안드로이드 앱 개발하기)

$35.73
Description
젯팩 컴포즈, 안드로이드 스튜디오, 코틀린으로 안드로이드 앱 개발하기
이 책은 젯팩 컴포즈, 안드로이드 스튜디오, 코틀린 프로그래밍 언어를 사용해 신속하고 빠르게 안정적이고 쾌적하게 동작하는 안드로이드 네이티브 UI 빌드 방법을 소개한다.
이 책에서 다루는 주제들은 자세한 튜토리얼 방식의 실습과 함께 진행되며, 다운로드할 수 있는 샘플 소스 코드도 함께 제공된다.
저자

닐 스미스

(Neil Smyth)
닐 스미스는 20년 이상의 IT 개발 경력을 지녔다. 특히 프로그래밍 언어와 기업용 개발 도구,사용자 인터페이스 디자인을 전문으로 해 왔으며, 시스템 프로그래밍과 웹 개발, 마케팅까지 담당하기도 했다.
닐은 IT 학사 외에 Network+, Project+, 자바와 마이크로소프트 MCP 자격증들을 가지고 있다.
또한 30여 종의 기술 관련 서적을 집필하였으며, 현재는 미국에서 인터넷 출판과 모바일 애플리케이션 개발 회사인 Payload Media를 공동 창업했고 CEO로 재직 중이다.

목차

옮긴이 머리말 xxiv
베타리더 후기 xxv

CHAPTER 1 들어가며 1
1.1 코틀린 개발자에게 2
1.2 코틀린을 처음 접하는 개발자에게 2
1.3 샘플 코드 다운로드 2

CHAPTER 2 안드로이드 스튜디오 개발 환경 설정 3
2.1 시스템 요구사항 3
2.2 안드로이드 스튜디오 패키지 다운로드 4
2.3 안드로이드 스튜디오 설치 4
2.4 안드로이드 스튜디오 설치 마법사 6
2.5 추가 안드로이드 SDK 패키지 설치하기 8
2.6 커맨드라인에서 안드로이드 SDK 도구에 접근할 수 있도록 설정하기 10
2.7 안드로이드 스튜디오 메모리 관리 13
2.8 안드로이드 스튜디오 및 SDK 업데이트 14
2.9 정리 14

CHAPTER 3 컴포즈 프로젝트 개요 15
3.1 프로젝트 개요 15
3.2 프로젝트 만들기 16
3.3 액티비티 만들기 16
3.4 프로젝트 및 SDK 설정 정의하기 17
3.5 예제 프로젝트 미리 보기 19
3.6 메인 액티비티 살펴보기 21
3.7 미리 보기 업데이트 25
3.8 정리 26

CHAPTER 4 컴포즈 예제 프로젝트 27
4.1 시작하기 27
4.2 템플릿 코드 삭제하기 27
4.3 컴포저블의 계층 구조 28
4.4 DemoText 컴포저블 추가하기 29
4.5 DemoText 컴포저블 미리 보기 30
4.6 DemoSlider 컴포저블 추가하기 31
4.7 DemoScreen 컴포저블 추가하기 32
4.8 DemoScreen 컴포저블 미리 보기 34
4.9 대화형 모드에서 테스트하기 35
4.10 프로젝트 완료하기 36
4.11 정리 36

CHAPTER 5 안드로이드 스튜디오에서 AVD 만들기 37
5.1 안드로이드 가상 기기 개요 37
5.2 에뮬레이터 시작하기 39
5.3 AVD에서 애플리케이션 실행하기 40
5.4 여러 기기에서 실행하기 42
5.5 애플리케이션 실행 중지하기 43
5.6 다크 테마 지원하기 43
5.7 별도의 창에서 에뮬레이터 실행하기 44
5.8 기기 프레임 활성화하기 46
5.9 정리 46

CHAPTER 6 안드로이드 스튜디오 에뮬레이터 이용 및 설정하기 47
6.1 에뮬레이터 환경 47
6.2 에뮬레이터 툴바 옵션 48
6.3 줌 모드 다루기 49
6.4 에뮬레이터 창 크기 조정하기 49
6.5 확장 제어 옵션 49
6.6 스냅샷 다루기 52
6.7 지문 에뮬레이션 설정하기 53
6.8 도구 창 모드의 에뮬레이터 55
6.9 정리 55

CHAPTER 7 안드로이드 스튜디오 사용자 인터페이스 살펴보기 56
7.1 시작 화면 56
7.2 기본 창 57
7.3 도구 창 59
7.4 안드로이드 스튜디오 키보드 단축키 62
7.5 스위처 및 최근 파일 탐색 63
7.6 안드로이드 스튜디오 테마 변경하기 64
7.7 정리 65

CHAPTER 8 물리적 안드로이드 기기에서 안드로이드 스튜디오 앱 테스트하기 66
8.1 ADB 개요 66
8.2 안드로이드 기기에서 USB 디버깅 ADB 활성화하기 67
8.3 USB 연결 문제 해결하기 70
8.4 안드로이드 기기의 무선 디버깅 활성화하기 71
8.5 adb 연결 테스트하기 73
8.6 정리 73

CHAPTER 9 안드로이드 스튜디오 코드 편집기 기본 74
9.1 안드로이드 스튜디오 편집기 74
9.2 코드 모드 78
9.3 편집기 창 분리하기 78
9.4 코드 자동 완성 79
9.5 스테이트먼트 자동 완성 80
9.6 파라미터 정보 81
9.7 파라미터 이름 힌트 81
9.8 코드 생성 81
9.9 코드 접기 83
9.10 빠른 문서 탐색 84
9.11 코드 형식 재지정 85
9.12 샘플 코드 찾기 86
9.13 실시간 템플릿 86
9.14 정리 87

CHAPTER 10 안드로이드 아키텍처 개요 88
10.1 안드로이드 소프트웨어 스택 88
10.2 리눅스 커널 89
10.3 안드로이드 런타임(ART) 89

10.4 안드로이드 라이브러리 89
10.5 애플리케이션 프레임워크 90
10.6 애플리케이션 91
10.7 정리 91

CHAPTER 11 코틀린 개요 92
11.1 코틀린이란 무엇인가? 92
11.2 코틀린과 자바 93
11.3 자바에서 코틀린으로 변환하기 93
11.4 코틀린과 안드로이드 스튜디오 93
11.5 코틀린을 이용해 실험하기 94
11.6 코틀린에서의 세미콜론 95
11.7 정리 95

CHAPTER 12 코틀린 데이터 타입, 변수, 널 허용 96
12.1 코틀린 데이터 타입 96
12.2 뮤터블 변수 100
12.3 이뮤터블 변수 100
12.4 뮤터블/이뮤터블 변수 선언하기 100
12.5 데이터 타입은 객체다 101
12.6 타입 애너테이션과 타입 추론 102
12.7 널 허용 타입 103
12.8 안전 호출 연산자 104
12.9 not-null 어서션 105
12.10 널 허용 타입과 let 함수 105
12.11 초기화 지연 107
12.12 엘비스 연산자 108
12.13 타입 캐스팅 및 타입 확인 108
12.14 정리 109

CHAPTER 13 코틀린 연산자와 표현식 110
13.1 코틀린의 표현식 구문 110
13.2 기본 할당 연산자 110
13.3 코틀린 산술 연산자 111
13.4 증강 할당 연산자 111
13.5 증가/감소 연산자 112
13.6 등치 연산자 113
13.7 부울 논리 연산자 114
13.8 범위 연산자 114
13.9 비트와이즈 연산자 115
13.10 정리 118

CHAPTER 14 코틀린
제어 흐름 119
14.1 반복 제어 흐름 119
14.2 조건부 제어 흐름 124
14.3 정리 127

CHAPTER 15 코틀린 함수와 람다 128
15.1 함수란 무엇인가? 128
15.2 코틀린에서의 함수 선언 128
15.3 코틀린 함수 호출하기 129
15.4 단일 표현식 함수 130
15.5 로컬 함수 130
15.6 반환값 다루기 131
15.7 기본 함수 파라미터 선언하기 131
15.8 가변 길이 함수 파라미터 132
15.9 람다 표현식 132
15.10 고차 함수 134
15.11 정리 135

CHAPTER 16 코틀린 객체 지향 프로그래밍 기초 136
16.1 객체란 무엇인가? 136
16.2 클래스란 무엇인가? 136
16.3 코틀린 클래스 정의하기 136
16.4 클래스에 프로퍼티 추가하기 137
16.5 메서드 정의하기 138
16.6 클래스 인스턴스 선언 및 초기화하기 138
16.7 기본 및 보조 생성자 138
16.8 초기화 블록 141
16.9 메서드 호출과 프로퍼티 접근 141
16.10 커스텀 접근자 142
16.11 중첩된 내부 클래스 143
16.12 컴패니언 객체 144
16.13 정리 146

CHAPTER 17 상속과 서브클래싱 147
17.1 상속, 클래스, 서브클래스 147
17.2 서브클래싱 구문 147
17.3 코틀린 상속 예시 149
17.4 서브클래스 기능 확장하기 150
17.5 상속된 메서드 오버라이드하기 150
17.6 커스텀 보조 생성자 추가하기 152
17.7 SavingsAccount 클래스 이용하기 153
17.8 정리 153

CHAPTER 18 컴포즈 개요 154
18.1 컴포즈 이전의 개발 154
18.2 컴포즈의 선언적 구문 155
18.3 컴포즈는 데이터 주도적이다 156
18.4 정리 156

CHAPTER 19 컴포저블 함수 개요 157
19.1 컴포저블 함수란 무엇인가? 157
19.2 상태 컴포저블과 비상태 컴포저블 158
19.3 컴포저블 함수 구문 158
19.4 파운데이션 컴포저블과 머티리얼 컴포저블 161
19.5 정리 162

CHAPTER 20 컴포즈 상태와 재구성 163
20.1 상태 163
20.2 재구성 163
20.3 StateExample 프로젝트 만들기 164
20.4 컴포저블에서 상태 선언하기 164
20.5 단방향 데이터 흐름 168
20.6 상태 호이스팅 170
20.7 환경 설정 변경을 통한 상태 저장하기 173
20.8 정리 174

CHAPTER 21 CompositionLocal 175
21.1 CompositionLocal 이해하기 175
21.2 CompositionLocal 이용하기 176
21.3 CompLocalDemo 프로젝트 만들기 177
21.4 레이아웃 디자인하기 178
21.5 CompositionLocal 상태 추가하기 179
21.6 CompositionLocal 상태에 접근하기 180
21.7 디자인 테스트하기 180
21.8 정리 182

CHAPTER 22 컴포즈 Slot API 183
22.1 Slot API 이해하기 183
22.2 Slot API 선언하기 184
22.3 Slot API 컴포저블 호출하기 185
22.4 정리 186

CHAPTER 23 컴포즈 Slot API 튜토리얼 187
23.1 프로젝트 개요 187
23

출판사 서평

쉽게 따라 할 수 있도록 자세히 설명한 국내 최초 젯팩 컴포즈 전문서
이 책은 구글의 모든 운영체제 플랫폼용 앱 개발에 관한 완전히 새로운 접근 방식인 젯팩 컴포즈의 국내 최초 전문서다.
코틀린 언어 자체에 대한 깊은 이해와 함께, 데이터 핸들링, 속성, 사용자 인터페이스 디자인, 데이터 베이스 연동, 샘플 앱의 개발과 구글 플레이 콘솔을 통한 배포까지 앱 개발의 전체 과정을 다루면서 젯팩이 주는 이점을 충분히 느껴볼 수 있을 것이며, 이 책을 통해 여러분의 안드로이드 개발 효율을 한층 높이기를 기대한다.

■ 젯팩 컴포즈, 안드로이드 스튜디오, 코틀린 프로그래밍 언어를 활용해 안드로이드 애플리케이션을 구축한다.
■ 젯팩 컴포즈 및 안드로이드 아키텍처의 핵심 개념을 이해하고, 컴포즈 개발 모드에서 다양한 컴포저블을 활용해 사용자 인터페이스 레이아웃을 구현한다.
■ 뷰 모델, SQLite 데이터베이스, Room 데이터베이스 접근, 데이터베이스 인스펙터, 라이브 데이터, 커스텀 테마 생성을 다룬다.
■ 상태 프로퍼티를 활용한 데이터 처리와 함께 모디파이어, 내비게이션 바, 사용자 인터페이스 내비게이션 등 핵심적인 사용자 인터페이스 설계 개념을 살펴보고 재사용할 수 있는 커스텀 레이아웃 컴포넌트를 구현한다.
■ 그래픽 다루기, 사용자 인터페이스 애니메이션, 제스처 핸들링을 살펴본다.
■ 데이터 타입, 연산자, 제어 흐름, 함수, 람다, 객체 지향 프로그래밍을 포함해 코틀린 프로그래밍 언어에 대하여 자세히 설명한다.
■ 구현한 앱을 패키징하고 구글 플레이 스토어에 업로드해서 배포하는 과정을 살펴본다.