О курсе
-
Мы начнем с основ программирования на языке Kotlin и разберем принципы ООП. Далее сосредоточимся на работе в Android Studio, научимся работать с базами данных, рефакторить код и дебажить приложение. А потом узнаем, как добавлять сервисы и медиафайлы, и рассмотрим декларативный способ разработки пользовательских интерфейсов Jetpack Compose.
-
В конце курса вы создадите многоэкранное приложение, которое сможете добавить в портфолио, и подготовитесь к техническому интервью на позицию Junior/Trainee Android Developer.
В программу курса Android Developer входят:
-
KOTLIN Изучите базовый синтаксис языка Kotlin с нуля, овладеете принципами объектно-ориентированного и реактивного программирования.
-
ANDROID STUDIO Научитесь проектировать Android-приложения, тестировать собственный код, интегрировать различные сервисы и загружать медиафайлы в приложение.
-
ПЕТ-ПРОЕКТ Создадите приложение-гид для поиска достопримечательностей в заданном радиусе и формирования маршрута через Google Places API.
-
КАРЬЕРНАЯ КОНСУЛЬТАЦИЯ Получите разбор вопросов на собеседованиях от лектора, будете понимать требования тестовых заданий, чтобы уверенно проходить технические интервью.
ЛЕКТОР КУРСА ANDROID DEVELOPER:
Александр
Мазуренко
- Senior Android Developer, последние 5 лет работает в GlobalLogic, которая входит в тройку лучших IT-компаний Украины
- работает в разработке 6+ лет, знает, как стартовать в IT без опыта, ведь сам начал карьеру в 35 лет и прошел путь от свитчера до синьора
- создавал приложение для плеймаркета в TICKETS.UA, который скачали 500 000+ пользователей
- имеет опыт кастомизации Android под разные проекты
- интегрировал и адаптировал медиаконтент в Android Auto
- работает с интегрированными TV-системами на базе Android
ПРОГРАММА КУРСА ANDROID DEVELOPER:
-
01
Блок № 1. Основы программирования вместе с Kotlin (видеоурок)
01 Введение в программирование на Kotlin
02 Типы данных и функции
03 Операции, операторы и логические выражения
04 Работа с циклами
05 Работа с массивами
06 Основы объектно-ориентированного программирования. Part 1
07 Основы объектно-ориентированного программирования. Part 2
08 Структуры данных для хранения объектов
Q&A сессия
Результаты:
- Запустите написанный на Kotlin код для выполнения
- Изучите основные типы данных на Kotlin
- Ознакомитесь с основными типами операций на Kotlin
- Изучите конструкции if-else и when и разберете особенности их использования
- Создадите программы добавления и вычитания простых чисел с использованием операторов ввода-вывода
- Научитесь пользоваться Ranges ― более простым и понятным механизмом для реализации циклических задач
- Научитесь создавать массивы, добавлять, обращаться и удалять элементы массива
- Узнаете, что такое класс и объект
- Разберете принципы объектно-ориентированного программирования (ООП): подражание, инкапсуляция, полиморфизм
- Научитесь использовать готовые функции для обработки коллекции: итерирование, маппинг, фильтрацию и трансформацию
-
02
Блок № 2. Основы работы с Android Studio
09 Краткая история системы Android
10 Знакомство с Git
11 Лейаут как основа для разметки
12 Переход в многоэкранный режим
Результаты:
- Установите Android Studio и разберете основные компоненты Android-приложения: Activity, Service, BroadcastReceiver, ContentProvider, Android Manifest
- Установите и настроите Git
- Изучите основные лейауты и разберете кейсы их использования
- Научитесь изменять параметры UI-элементов в зависимости от требований, анализировать дерево UI-элементов и добавлять зависимости в build.gradle-файл
- Узнаете, как использовать основные параметры ConstraintLayout
- Узнаете, как запустить одну Activity в другой через Intent
- Научитесь пользоваться ADB (Android Device Bridge) и отправлять через него Intent и другие базовые команды
-
03
Блок № 3. Многопоточность и работа с интернет-запросами
13 Многопоточность в Android
14 Основы сетевого взаимодействия
15 Разновидности ответов на интернет-запросы: PlainText, XML, JSON
16 Воспроизведение обработанных данных в виде списка: ListView и RecyclerView
17 Создание User Flow
Результаты:
- Рассмотрите основные способы предотвращения race condition и синхронизации переменных
- Разберете преимущества Executors над прямым запуском threads
- Узнаете, как взаимодействует UI-поток с Event Loop
- Изучите основы обмена данными через HTTP/HTTPS-протокол
- Овладеете библиотеками для воспроизведения и трансформации изображений Glide и Picasso
- Овладеете библиотеками Retrofit и OkHttp для веб-запросов
- Узнаете, как трансформировать JSON-объекты
- Овладеете фреймворком RxJava для оптимизации работы с многопоточностью
- Узнаете, как воспроизвести список данных с помощью ListView
- Ознакомитесь с паттерном Adapter
- Научитесь использовать RecyclerView и приобретете скилы работы со встроенными анимациями
-
04
Блок № 4. Хранение данных и архитектурные паттерны
18 Хранение данных при изменении конфигурации
19 SQL и работа с базами данных
20 Service как компонент системы, предназначенный для выполнения долговременных задач
Результаты:
- Поймете, почему при изменении конфигурации теряются данные
- Рассмотрите основные способы хранения данных в случае изменения конфигурации
- Научитесь использовать ViewModel как элемент MVVM-архитектуры
- Разберетесь в видах и типах баз данных
- Узнаете, как построить SQL-запрос на базу, и изучите основные операторы
- Научитесь осуществлять обзор баз данных с помощью встроенных плагинов или других программ
- Рассмотрите WorkManager как альтернативу Service
-
05
Блок № 5. Корутины, DI-библиотеки и Unit-тестирование
21 Корутины как паттерн структурированной многопоточности
22 Dependency Injection
23 Тестирование приложений
24 Анимации в Android
Результаты:
- Научитесь запускать корутины и параллельное выполнение нескольких задач в корутине с выводом конечного результата
- Приобретете скилы рефакторинга кода
- Узнаете, что такое Dependency Injection
- Овладеете библиотекой Koin для Dependency Injection на Kotlin
- Научитесь рефакторить приложение с помощью библиотеки Koin
- Овладеете библиотеками Dagger 2 и Hilt
- Научитесь пользоваться библиотеками JUnit и Mockito для Unit-тестирования
- Освоите библиотеки Espresso и UI Automator для тестирования пользовательского интерфейса
- Научитесь пользоваться библиотекой Room для тестирования базы данных
- Ознакомитесь с методологией Test Driven Development
- Узнаете, как анимировать параметры UI-элементов с помощью ObjectAnimator
- Освоите библиотеки Dynamic Animation и Motion Layout для создания анимаций
-
06
Блок № 6. Google Services, анимации и Jetpack Compose
25 Google Services и Firebase
26 Воспроизведение медиа в Android-приложении
27 Jetpack Compose. Part 1
28 Jetpack Compose. Part 2
29 CustomView, SurfaceView и Kotlin Flow (API Flow)
30 Разбор вопросов на собеседовании
31 Защита финального проекта
Результаты:
- Узнаете, как добавлять сервисы в приложение
- Научитесь реализовывать простой бэкенд с помощью Firebase Realtime Database
- Узнаете, как добавить Google-карты в ваше приложение
- Узнаете, как воспроизводить аудио- и видеофайлы в приложении
- Овладеете библиотекой ExoPlayer для воспроизведения медиаконтента
- Научитесь интегрировать media session для дальнейшего расширения функциональности приложения
- Научитесь использовать основные компоненты разметки и модификаторы для создания интерфейсов разной сложности
- Создадите многоэкранное приложение, используя Jetpack Compose
- Узнаете, о чем спрашивают Junior/Trainee Android Developers на собеседованиях
- Получите рекомендации от лектора по самопрезентации
- Разработаете приложение для определения интересных мест в заданном радиусе и формирования оптимального маршрута с интеграцией с Google-картами
- Представите приложение лектору и коллегам
Регистрация