Про курс
-
Ми почнемо з основ програмування мовою 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-мапами
- Презентуєте застосунок лектору й колегам
Реєстрація