Course Content
-
Введение и полезные материалы
-
Добро пожаловать на интенсив!
- Полезные материалы и ссылки по изучению Kotlin
- Описание стартового проекта
-
Исходный код и макеты проекта
-
Получение API-ключа в The Movie Database
-
-
Сетевое взаимодействие в Android. Retrofit Организация сетевого взаимодействия. В первом занятии вы разработаете сетевой слой приложения на базе Retrofit и GSON. Мы рассмотрим продвинутые аннотации GSON, научимся использовать interceptors в Retrofit для повторной авторизации и логирования данных.
-
Сетевое взаимодействие в Android. Retrofit
-
Отображение списка через Groupie
- Практическое задание
-
-
Реактивное программирование на RxJava2.0 Рассмотрим концепцию реактивного программирования и узнаем чем Observable отличается от Observer
- Подключение RxJava 2.0 для практики во время вебинара
-
Реактивное программирование на RxJava. Часть 1
-
Исходный код и полезные ресурсы
-
Практическое задание
-
Реактивное программирование на RxJava. Часть 2
-
Практическое задание
-
Кэширование локальных данных на базе ORM Room Способы хранения данных. Работа с Room. Отношения один-ко-многим, многие-ко-многим, миграции и тестирование миграций.
-
Работа с базами данных. Room
-
Исходный код с примерамии Relations
-
Практическое задание
-
-
MVP + Clean Architecture Рассмотрим паттерны MVP/MVVM + Clean Architecture. Учимся разделять приложение на слои и использовать Clean Architecture
-
MVP + Clean Architecture
-
Практическое задание
-
-
MVVM + LiveData
-
LiveData, ViewModel
-
Практическое задание
-
-
Внедрение зависимостей Dagger 2 и Koin. Dagger 2 и Koin. Научитесь использовать Dagger 2 и Koin
-
Dagger 2
-
Практическое задание
-
-
Kotlin coroutines Kotlin coroutines
-
Kotlin coroutines
-
Практическое задание
-
-
Развитие карьеры разработчика Советы по прохождению собеседований, на какие soft skills смотрят работодатели, как выйти на биржу фриланса и искать заказы.
-
Развитие карьеры
-
Практическое задание
В этом задании мы отработаем навыки работы с Retrofit. Чтобы было проще его выполнить здесь примерный план, по которому вы можете работать:
- Вставить в keystore.properties API-ключ
- Добавить библиотеки для работы с Retrofit
Реализация запроса для получения фильмов now_playing
План реализации получения списка фильмов:
- Описать модели для получения ответа (MovieResponse, Movie)
- Описать методы API (Тип запроса (Get/Post), тип возвращаемого значения)
Документация запроса https://developers.themoviedb.org/3/movies/get-now-playing
- Создать ApiClient инициализирующий Retrofit
- Добавить логер для логирования запросов
- Сделать вызов метода получения списка фильмов из FeedFragment и заполнить список полученными данными
Аналогично добавить запросы для
- Получение новинок Upcoming https://developers.themoviedb.org/3/movies/get-upcoming
- Получение популярных фильмов Popular(https://developers.themoviedb.org/3/movies/get-popular-movies)
Реализовать UI списка телесериалов и запрос
- Реализовать UI ячейки для отображения превью телесериала
- Реализовать запрос для получения списка телесериалов https://developers.themoviedb.org/3/tv/get-popular-tv-shows
*Реализация кэширования и логера
- Реализовать кэширование как показано на вебинаре
- Добавить кастомный логер как показано на вебинаре
*Реализация страницы деталей фильма
- Реализовать UI страницы деталей фильма
- Реализовать запрос для получения деталей фильма
- https://developers.themoviedb.org/3/movies/get-movie-details
- https://developers.themoviedb.org/3/movies/get-movie-credits
Задания со звёздочкой не обязательны, однако если у вас есть время и силы – то крайне желательно его тоже выполнить для закрепления полученных навыков.
Предыдущий
Отображение списка через Groupie