Android Kotlin 기초: 교육 과정에 오신 것을 환영합니다

Google Developers 교육팀에서 만든 Android Kotlin 기초 교육 과정에 오신 것을 환영합니다. 이 교육 과정에서는 Kotlin을 사용하여 Android 앱을 빌드하는 방법의 기본사항을 안내하는 일련의 Codelab을 제공합니다. 이 교육 과정에서는 기본적인 Android Kotlin 프로그래밍 개념에 관해 알아보고 다양한 앱을 빌드합니다.

Codelab을 순서대로 진행하는 것이 좋지만 순서를 바꿔 진행해도 괜찮습니다.

Google Developers 교육팀에서 만든 다른 Android 교육에 관해 알아보려면 Google Developers 교육: Android를 방문하세요.

기본 요건

Android Kotlin 기초 교육 과정을 수강할 때 자바, C++, Smalltalk와 같은 완전한 객체 지향 프로그래밍 언어에 관한 경력이 2년 이상 있다면 더 효과적으로 학습할 수 있습니다.

무료로 제공되는 Udacity의 프로그래머를 위한 Kotlin 부트캠프 교육 과정에서 다룬 모든 개념, 도구, 용어에 관해 잘 알고 있어야 합니다.

또한 GitHub 탐색에 익숙하고 다음과 같은 개념을 잘 알고 있어야 합니다.

  • 기본 멀티스레딩 및 예외 처리
  • 일반적으로 코드를 빌드하고 컴파일하며 실행하는 방식

또한 필수는 아니지만 함수 프로그래밍 개념을 아는 것도 도움이 됩니다.

시작 및 솔루션 코드

Android Kotlin 기초 교육 과정의 Codelab을 진행하면서 앱을 만듭니다. 개발자가 만드는 앱의 시작 앱솔루션 코드의 소스 코드는 GitHub에 있습니다.

Android Kotlin 기초에는 다음 강의가 포함됩니다.

  • 과정 1: 첫 앱 빌드
  • 과정 2: 레이아웃
  • 과정 3: 탐색
  • 과정 4: 활동 및 프래그먼트 수명 주기
  • 과정 5: 아키텍처 구성요소
  • 과정 6: Room 데이터베이스 및 코루틴
  • 과정 7: RecyclerView
  • 과정 8: 인터넷에 연결
  • 과정 9: 저장소
  • 과정 10: 모두를 위한 디자인

각 과정에는 여러 Codelab이 포함되어 있습니다.

과정 1: 첫 앱 빌드

이 과정에서는 Kotlin을 사용하도록 Android 스튜디오를 설정하는 방법과 앱을 빌드하는 방법을 설명합니다. "Hello World"부터 시작하여 이미지 파일과 클릭 핸들러를 사용하는 앱으로 넘어갑니다. Android 프로젝트가 구조화되는 방식, Android Kotlin 앱에서 뷰를 사용하고 수정하는 방법, 앱이 이전 버전과 호환되는지 확인하는 방법을 알아봅니다. API 수준 및 Android Jetpack 라이브러리에 관해서도 알아봅니다.

과정 1에는 다음 Codelab이 포함되어 있습니다.

강의 2: 레이아웃

이 과정에서는 Android 스튜디오 Layout Editor를 사용하여 선형 레이아웃 및 제약 조건 레이아웃을 만드는 방법을 알아봅니다. 사용자 입력을 가져와서 표시하고 사용자 탭에 응답하며 뷰의 공개 상태 및 색상을 변경하는 앱을 만듭니다. 이 과정에서는 데이터 결합을 사용하여 findViewById()의 비효율적인 호출을 제거하는 방법도 설명합니다.

과정 2에는 다음 Codelab이 포함되어 있습니다.

과정 3: 탐색

이 과정에서는 앱에서 유용한 탐색을 만드는 방법에 관해 알아봅니다. 프래그먼트를 만들어 앱에 추가한 후 Android 스튜디오 탐색 그래프를 사용하여 앱에 탐색을 추가합니다. 앱에 탐색 창 및 옵션 메뉴를 추가합니다. 그리고 앱의 백 스택 관련 작업을 하고 시스템 뒤로 버튼의 대상을 변경합니다. 마지막으로, 앱 내에서 외부 활동을 호출하는 방법을 알아봅니다.

과정 3에는 다음 Codelab이 포함되어 있습니다.

과정 4: 활동 및 프래그먼트 수명 주기

이 강의에서는 활동과 프래그먼트 수명 주기를 알아보고 복잡한 수명 주기 상황을 관리하는 방법을 알아봅니다. Android 수명 주기와 관련된 몇 가지 버그가 포함된 시작 앱으로 작업합니다. 앱의 수명 주기 이벤트를 더 잘 파악하기 위해 앱에 로깅을 추가하고 앱에 포함된 버그를 수정하며 몇 가지 개선사항을 앱에 추가합니다. 또한 더 효과적으로 구성되고 유지 관리하기 쉬운 코드로 수명 주기 이벤트를 관리하는 데 도움이 되는 Android Jetpack의 수명 주기 라이브러리에 관해 알아봅니다.

과정 4에는 다음 Codelab이 포함되어 있습니다.

과정 5: 아키텍처 구성요소

이 과정에서는 ViewModelLiveData 객체를 사용하는 방법을 설명합니다. ViewModel 객체를 사용하여 화면 회전과 같이 구성을 변경할 때도 데이터를 유지하는 방법을 알아봅니다. 앱의 UI 데이터를 캡슐화된 LiveData으로 변환하고 LiveData 값이 변경될 때 알림을 받는 관찰자 메서드를 추가합니다.

또한 레이아웃의 뷰가 정보를 전달하는 데 앱의 프래그먼트를 사용하지 않고도 LiveDataViewModel를 데이터 결합과 통합하여 ViewModel 객체와 직접 통신할 수 있습니다. 이 기법을 사용하면 코드가 간소화되고 UI 컨트롤러에 클릭 핸들러가 필요하지 않습니다.

과정 5에는 다음 Codelab이 포함되어 있습니다.

과정 6: Room 데이터베이스 및 코루틴

이 과정에서는 Room 데이터베이스 라이브러리를 사용하는 방법을 설명합니다. Room는 데이터베이스 설정 및 구성과 같은 여러 작업을 처리하고 데이터베이스와 상호작용하기 위한 코드를 간소화합니다. Kotlin 코루틴을 사용하여 데이터베이스 작업을 기본 스레드에서 떨어뜨려 놓는 방법을 알아보고 앱 탐색에서 ViewModelLiveData를 사용하는 방법을 자세히 알아봅니다.

과정 6에는 다음 Codelab이 포함되어 있습니다.

과정 7: RecyclerView

이 과정에서는 RecyclerView를 사용하여 항목의 목록 및 그리드를 효율적으로 표시하는 방법을 설명합니다. 복잡한 목록 및 그리드의 경우 RecyclerView를 더 효율적으로 만들고 코드를 더 쉽게 유지 관리하고 확장하는 방법을 알아봅니다. RecyclerView의 항목을 클릭 가능하게 만드는 방법을 알아봅니다. 예를 들어 앱에서 헤더를 추가하기 위해 RecyclerView에서 목록 및 그리드에 둘 이상의 뷰 홀더 및 레이아웃을 추가하는 방법도 알아봅니다.

과정 7에는 다음 Codelab이 포함되어 있습니다.

과정 8: 인터넷에 연결

이번 강의에서는 커뮤니티에서 개발한 라이브러리를 사용해 웹 서비스에 연결하여 데이터를 검색하고 표시하는 방법을 설명합니다. 잠재적인 네트워크 오류를 처리하고 Glide 라이브러리를 사용하여 인터넷에서 사진을 로드하고 표시하는 방법을 알아봅니다. 또한 RecyclerView를 빌드하고 사용하여 이미지의 그리드를 표시합니다.

과정 8에는 다음 Codelab이 포함되어 있습니다.

과정 9: 저장소

이 과정에서는 저장소를 추가하여 데이터 영역을 추상화하고 나머지 Android Kotlin 앱에 깔끔한 API를 제공하는 방법을 설명합니다. 또한 WorkManager를 사용하여 효율적이고 최적화된 방식으로 백그라운드 작업을 예약하는 방법도 알아봅니다.

과정 9에는 다음 Codelab이 포함되어 있습니다.

과정 10: 모두를 위한 디자인

이 강의에서는 아름답고 접근하기 쉬운 Android 앱 디자인의 기본사항을 소개하고 Google 개발자 그룹 (GDG) 모임에 관한 정보를 찾아 표시하는 앱을 빌드하는 방법을 안내합니다.

과정 10에는 다음 Codelab이 포함되어 있습니다.

다음 강의 시작: 1.0 Android 스튜디오 설치

첫 번째 Codelab인 1.0 Android 스튜디오 설치를 통해 Android Kotlin 기초 교육 과정을 시작하세요.