Добро пожаловать на курс Android Kotlin Fundamentals, созданный командой Google Developers Training. Этот курс содержит серию лабораторных работ, которые познакомят вас с основами создания приложений для Android с использованием Kotlin. В этом курсе вы изучите основные концепции программирования Android Kotlin и создадите различные приложения.
Мы рекомендуем проходить кодлабы последовательно, но это не обязательно.
Чтобы узнать о других курсах обучения Android, созданных командой Google Developers Training, посетите страницу Google Developers Training: Android .
Предпосылки
Чтобы пройти курс Android Kotlin Fundamentals, мы рекомендуем вам иметь не менее 2 лет опыта работы с полноценным объектно-ориентированным языком программирования, таким как Java, C++ или Smalltalk.
Вы должны быть знакомы со всеми понятиями, инструментами и словарным запасом, которым обучают на бесплатном курсе Kotlin Bootcamp for Programmers от Udacity.
Вы также должны уметь ориентироваться в GitHub и быть знакомы со следующими понятиями:
- Базовая многопоточность и обработка исключений.
- Как строится, компилируется и выполняется код, в общих чертах.
Также полезно иметь представление о том, что такое функциональное программирование, но это не обязательно.
Стартер и код решения
Работая с лабораториями кода в курсе Android Kotlin Fundamentals, вы создаете приложения. Исходный код начальных приложений и код решения для создаваемых вами приложений находится на GitHub.
Android Kotlin Fundamentals включает следующие уроки:
- Урок 1. Создайте свое первое приложение
- Урок 2: Макеты
- Урок 3: Навигация
- Урок 4. Жизненные циклы действий и фрагментов
- Урок 5: Компоненты архитектуры
- Урок 6: База данных комнат и сопрограммы
- Урок 7: RecyclerView
- Урок 8: Подключение к Интернету
- Урок 9: Репозиторий
- Урок 10: Дизайн для всех
Каждый урок содержит несколько кодлабов.
Урок 1. Создайте свое первое приложение
В этом уроке вы узнаете, как настроить Android Studio для использования Kotlin и как создавать приложения. Вы начинаете с «Hello World» и переходите к приложению, которое использует файлы изображений и обработчик кликов. Вы узнаете, как структурированы проекты Android, как использовать и изменять представления в приложении Android Kotlin и как обеспечить обратную совместимость ваших приложений. Вы также узнаете об уровнях API и библиотеках Android Jetpack.
Урок 1 включает в себя следующие кодлабы:
- 1.0 Установите Android Studio
- 1.1 Начать
- 1.2 Базовая структура приложения
- 1.3 Ресурсы изображений и совместимость
- 1.4 Научитесь помогать себе
Урок 2: Макеты
На этом уроке вы узнаете, как использовать редактор макетов Android Studio для создания линейных макетов и макетов с ограничениями. Вы создаете приложения, которые получают и отображают пользовательский ввод, реагируют на касания пользователя и изменяют видимость и цвет представлений. В этом уроке вы также узнаете, как использовать привязку данных для исключения неэффективных вызовов findViewById()
.
Урок 2 включает в себя следующие кодлабы:
- 2.1 Линейная компоновка с использованием редактора компоновки
- 2.2 Добавить интерактивность для пользователя
- 2.3 Ограничение макета с помощью редактора макетов
- 2.4 Основы привязки данных
Урок 3: Навигация
В этом уроке вы узнаете, как создать полезную навигацию в приложении. Вы создаете фрагмент и добавляете его в приложение, а затем добавляете в приложение навигацию с помощью графа навигации Android Studio. Вы добавляете в приложение панель навигации и меню параметров и работаете с бэкстеком приложения, меняя назначение системной кнопки «Назад». Наконец, вы узнаете, как вызывать внешнее действие из приложения.
Урок 3 включает в себя следующие кодлабы:
Урок 4. Жизненные циклы действий и фрагментов
На этом уроке вы узнаете о жизненном цикле активности и фрагмента, а также узнаете, как управлять сложными ситуациями жизненного цикла. Вы работаете со стартовым приложением, которое содержит несколько ошибок, связанных с жизненным циклом Android. Вы добавляете ведение журнала в приложение, чтобы лучше понимать события жизненного цикла приложения, исправляете ошибки, содержащиеся в приложении, и добавляете в приложение некоторые улучшения. Вы также узнаете о библиотеке жизненного цикла Android Jetpack, которая может помочь вам управлять событиями жизненного цикла с помощью кода, который лучше организован и прост в обслуживании.
Урок 4 включает в себя следующие кодлабы:
Урок 5: Компоненты архитектуры
Этот урок научит вас использовать объекты ViewModel
и LiveData
. Вы узнаете, как использовать объекты ViewModel
, чтобы данные могли сохраняться при изменениях конфигурации, таких как повороты экрана. Вы конвертируете данные пользовательского интерфейса приложения в инкапсулированные LiveData
и добавляете методы-наблюдатели, которые уведомляются об изменении значения LiveData
.
Вы также интегрируете LiveData
и ViewModel
с привязкой данных, чтобы представления в вашем макете напрямую взаимодействовали с объектами ViewModel
, не используя фрагменты приложения для передачи информации. Этот метод упрощает ваш код и устраняет необходимость в обработчиках кликов в контроллерах пользовательского интерфейса.
Урок 5 включает в себя следующие лабораторные работы:
- 5.1 ViewModel и ViewModelProvider
- 5.2: LiveData и наблюдатели LiveData
- 5.3: Привязка данных с ViewModel и LiveData
- 5.4: Преобразования LiveData
Урок 6: База данных комнат и сопрограммы
Этот урок научит вас, как использовать библиотеку базы данных Room
. Room
берет на себя многие хлопоты по установке и настройке базы данных и упрощает код для взаимодействия с базой данных. Вы узнаете, как использовать сопрограммы Kotlin для перемещения операций базы данных из основного потока, и вы узнаете больше об использовании ViewModel
и LiveData
с навигацией по приложениям.
Урок 6 включает в себя следующие кодлабы:
Урок 7: RecyclerView
В этом уроке вы узнаете, как использовать RecyclerView
для эффективного отображения списков и сеток элементов. Для сложных списков и сеток вы узнаете, как сделать RecyclerView
более эффективным, а ваш код — проще в обслуживании и расширении. Вы узнаете, как сделать элементы в RecyclerView
интерактивными. Вы также узнаете, как добавить более одного держателя представления и макета в списки и сетки в RecyclerView
, например, чтобы добавить заголовок в свое приложение.
Урок 7 включает в себя следующие кодлабы:
- 7.1 Основы RecyclerView
- 7.2 DiffUtil и привязка данных с помощью RecyclerView
- 7.3 GridLayout с RecyclerView
- 7.4 Взаимодействие с элементами RecyclerView
- 7.5 Заголовки в RecyclerView
Урок 8: Подключение к Интернету
На этом уроке вы узнаете, как использовать библиотеки, разработанные сообществом, для подключения к веб-службе для извлечения и отображения данных. Вы узнаете, как обрабатывать потенциальные сетевые ошибки и использовать библиотеку Glide для загрузки и отображения фотографий из Интернета. Вы также RecyclerView
и используете его для отображения сетки изображений.
Урок 8 включает в себя следующие лабораторные работы:
- 8.1 Получение данных из Интернета
- 8.2 Загрузка и отображение изображений из Интернета
- 8.3 Фильтрация и подробные представления с интернет-данными
Урок 9: Репозиторий
В этом уроке вы узнаете, как добавить репозиторий, чтобы абстрагировать уровень данных и предоставить чистый API для остальной части вашего приложения Android Kotlin. Вы также узнаете, как использовать WorkManager
для эффективного и оптимизированного планирования фоновых задач.
Урок 9 включает следующие лабораторные работы:
Урок 10: Дизайн для всех
Этот урок учит основам красивого и доступного дизайна приложений для Android и поможет вам создать приложение, которое находит и отображает информацию о встречах Google Developer Group (GDG).
Урок 10 включает в себя следующие лабораторные работы:
Начать следующий урок:
Начните курс Android Kotlin Fundamentals, выполнив первую лабораторную работу 1.0 Install Android Studio .