Android Kotlin 기초 교육 과정은 Google Developers 교육팀에서 만들었습니다. 이 교육 과정에서는 Android Kotlin 프로그래밍 개념에 관해 알아보고 다양한 앱을 빌드합니다.
Android Kotlin 기초 교육 과정 자료에는 다음이 포함됩니다.
- 교육 과정 Codelab
- Codelab에서 만드는 앱을 위한 GitHub의 솔루션 코드 및 시작 앱
기본 요건
이 교육 과정에서는 Kotlin 프로그래밍 언어를 알고 있거나 빠르게 학습할 수 있다고 가정합니다. Android Kotlin 기초 교육 과정을 수강할 때 자바, C++, Smalltalk와 같은 완전한 객체 지향 프로그래밍 언어에 관한 경력이 2년 이상 있다면 더 효과적으로 학습할 수 있습니다.
무료로 제공되는 Udacity의 프로그래머를 위한 Kotlin 부트캠프 교육 과정에서 다룬 모든 개념, 도구, 용어에 관해 잘 알고 있어야 합니다.
또한 GitHub 탐색에 익숙하고 다음과 같은 개념을 잘 알고 있어야 합니다.
- 기본 멀티스레딩 및 예외 처리
- 일반적으로 코드를 빌드하고 컴파일하며 실행하는 방식
또한 필수는 아니지만 함수 프로그래밍 개념을 아는 것도 도움이 됩니다.
이 교육 과정에는 어떤 내용이 포함되나요?
Android Kotlin 기초 Codelab을 순서대로 진행하는 것이 좋지만 순서를 바꿔 진행해도 괜찮습니다.
과정 1: 첫 앱 빌드
과정 1에서는 Kotlin을 사용하도록 Android 스튜디오를 설정하는 방법과 앱을 빌드하는 방법을 설명합니다. 'Hello World'부터 시작하여 이미지 파일 및 클릭 핸들러를 사용하는 앱으로 넘어갑니다. Android 프로젝트가 구조화되는 방식, Kotlin Android 앱에서 뷰를 사용하고 수정하는 방법, 앱이 이전 버전과 호환되는지 확인하는 방법을 알아봅니다. 또한 API 수준 및 Android Jetpack 라이브러리에 관해서도 알아봅니다.
과정 2: 레이아웃
과정 2에서는 Android 스튜디오 Layout Editor를 사용하여 선형 레이아웃 및 제약 조건 레이아웃을 만드는 방법을 알아봅니다. 사용자 입력을 가져와서 표시하고 사용자 탭에 응답하며 뷰의 공개 상태 및 색상을 변경하는 앱을 만듭니다. 이 과정에서는 데이터 결합을 사용하여 findViewById() 메서드에 대한 비효율적인 호출을 제거하는 방법도 설명합니다.
과정 3: 탐색
과정 3에서는 앱에서 유용한 탐색을 만드는 방법에 관해 알아봅니다. 프래그먼트를 만들어 앱에 추가한 후 Android 스튜디오 탐색 그래프를 사용하여 앱에 탐색을 추가합니다. 앱에 탐색 창 및 옵션 메뉴를 추가합니다. 그리고 앱의 백 스택 관련 작업을 하고 시스템 뒤로 버튼의 대상을 변경합니다. 마지막으로, 앱 내에서 외부 활동을 호출하는 방법을 알아봅니다.
과정 4: 활동 및 프래그먼트 수명 주기
과정 4에서는 활동 및 프래그먼트 수명 주기에 관해 알아보고 복잡한 수명 주기 상황을 관리하는 방법을 알아봅니다. Android 수명 주기와 관련된 몇 가지 버그가 포함된 시작 앱으로 작업합니다. 앱의 수명 주기 이벤트를 더 잘 파악하기 위해 앱에 로깅을 추가하고 앱에 포함된 버그를 수정하며 몇 가지 개선사항을 앱에 추가합니다. 또한 더 효과적으로 구성되고 유지 관리하기 쉬운 코드로 수명 주기 이벤트를 관리하는 데 도움이 되는 Android Jetpack의 수명 주기 라이브러리에 관해 알아봅니다.
과정 5: 아키텍처 구성요소
과정 5에서는 ViewModel 및 LiveData 객체를 사용하는 방법을 설명합니다.
ViewModel 객체를 사용하여 화면 회전과 같이 구성을 변경할 때도 데이터를 유지하는 방법을 알아봅니다. 앱의 UI 데이터를 캡슐화된 LiveData로 변환하고 LiveData 값이 변경될 때 알림을 받는 관찰자 메서드를 추가합니다.
또한 LiveData 및 ViewModel을 데이터 결합과 통합하여 레이아웃의 뷰가 앱의 프래그먼트를 사용해 정보를 중계하지 않고도 ViewModel 객체와 직접 통신할 수 있게 합니다. 이 기법을 사용하면 코드가 간소화되고 UI 컨트롤러에 클릭 핸들러가 필요하지 않습니다.
과정 6: Room 데이터베이스 및 코루틴
과정 6에서는 Room 데이터베이스 라이브러리를 사용하는 방법을 설명합니다. Room은 데이터베이스 설정 및 구성에 필요한 많은 부분을 처리하고 데이터베이스와 상호작용하기 위한 코드를 간소화합니다. Kotlin 코루틴을 사용하여 데이터베이스 작업을 기본 스레드에서 떨어뜨려 놓는 방법을 알아보고 앱 탐색에서 ViewModel 및 LiveData를 사용하는 방법에 관해 자세히 알아봅니다.
과정 7: RecyclerView
과정 7에서는 RecyclerView를 사용하여 항목의 목록 및 그리드를 효율적으로 표시하는 방법을 설명합니다. 복잡한 목록 및 그리드의 경우 RecyclerView를 더 효율적으로 만들고 코드를 더 쉽게 유지 관리하고 확장하는 방법을 알아봅니다. RecyclerView의 항목을 클릭 가능하게 만드는 방법을 알아봅니다. 예를 들어 앱에서 헤더를 추가하기 위해 RecyclerView의 목록 및 그리드에 둘 이상의 뷰 홀더 및 레이아웃을 추가하는 방법도 알아봅니다.
과정 8: 인터넷에 연결
과정 8에서는 커뮤니티에서 개발한 라이브러리를 사용해 웹 서비스에 연결하여 데이터를 검색하고 표시하는 방법을 설명합니다. 잠재적인 네트워크 오류를 처리하고 Glide 라이브러리를 사용하여 인터넷에서 사진을 로드하고 표시하는 방법을 알아봅니다. 또한 RecyclerView를 빌드하고 사용하여 이미지의 그리드를 표시합니다.
과정 9: 저장소
과정 9에서는 저장소를 추가하여 데이터 영역을 추상화하고 Android Kotlin 앱의 나머지 부분에 정리된 API를 제공하는 방법을 설명합니다. 또한 WorkManager를 사용하여 효율적이고 최적화된 방식으로 백그라운드 작업을 예약하는 방법도 알아봅니다.
과정 10: 모두를 위한 디자인
이 과정에서는 Android 앱 디자인의 기본사항을 설명합니다. 테마 및 스타일, 머티리얼 디자인, 모든 사람이 앱에 더 쉽게 액세스할 수 있게 하는 방법을 소개합니다.