Модуль 2

Разработка приложений для ОС Android

Тема № 2.1. Введение в языки программирования Kotlin и Java (8 часов).
Базовый синтаксис языка. Основные управляющие конструкции. Система типов языка. Массивы, диапазоны, строки, коллекции. Операторы. Объектно-ориентированное программирование с использованием языка. Функциональное программирование с использованием языка Kotlin. Использование языка Kotlin совместно с Java.
Среда разработки IntelliJ IDEA Community Edition.
Тема № 2.2. Основы работы в ОС Android (4 часа).
Обзор компонентов и инструментов для разработки приложений для ОС Android : JDK, Android Studio, Eclipse, Android SDK Manager. Настройка инструментария для разработки мобильного приложения.
Структура Android-приложения. Простое приложение для Android.
Тема № 2.3. Разработка пользовательского интерфейса для мобильных Android-приложений (6 часов).
Построение простого пользовательского интерфейса. Использование XML для описания пользовательского интерфейса. Альтернативные макеты. Линейный макет. Текстовые поля. Полосы прокрутки. Кнопки и флажки. Индикаторы, слайдеры и компоненты для отображения времени. Всплывающие уведомления. Создание собственных всплывающих уведомлений. Диалоги. Создание диалоговых окон. Меню. Понятие компоновки. Типы компоновок в Android.
Поддержка различных Android устройств. Поддержка различных языков в Android приложении. Поддержка различных экранов Android устройств. Особенности различных версий Android.
Тема № 2.4. Компоненты мобильных Android-приложений (10 часов).
Понятие виджета. Обзор базовых виджетов. Виджеты для отображения графики. Обработка событий. Виджеты списки и привязка данных.
Работа с окнами при разработке мобильного приложения. Activity и Intent. Жизненный цикл Activity. Управление жизненным циклом Activity. Запуск Activity. Приостановка и возобновление Activity. Остановка и перезапуск Activity. Повторное создание Activity. Объекты Intent.
Адаптеры и списки. Элемент RecyclerView.
Построение динамического пользовательского интерфейса с использованием различных компонентов. Создание фрагмента. Построение гибкого пользовательского интерфейса. Связь с другими фрагментами.
Компонент Service. Работа служб в Android. Создание службы. Вызов системной службы. Компонент Broadcast Receiver. Системные события. Работа с событиями: прослушивание и передача.
Сохранение данных. Компонент Content Provider. База данных SQLite. Инструменты для работы с БД в Android. Создание БД. Управление БД из приложения. Запросы к Content Provider.
Тема № 2.5. Дополнительные возможности Android (10 часов).
Взаимодействие с другими приложениями. Отправка пользователя в другое приложение. Получение результата от Activity. Разрешение другим приложениям запускать вашу Activity.
Файловый ввод-вывод. Пользовательские настройки. Ресурсы в Android-приложениях. Активы. Локализация приложений. Стили и темы. Работа с графикой и анимацией. Material design. Работа с системными компонентами и сетевыми сервисами Android. Debugging tools. Файл Android Manifest. Работа с Android Resources. Gradle для Android-проекта. Получение информации о телефоне. Обработка телефонных вызовов. Работа с SMS. Средства геолокации. Работа с оборудованием мобильного устройства.
Тема № 2.6. Популярные Android библиотеки для разработчиков (3 часа)
Общие библиотеки: Android Jetpack, Firebase, Dagger.
Асинхронная работа и сетевые запросы: Retrofit, Kotlin courutines, RXJava.
Библиотеки для работы с изображениями.
Библиотеки для работы с базами данных: Room, Realm.
Библиотеки для мобильной аналитики.