На курсе начинают с разработки интерфейса. Изучают компонент CardView для создания карточек. Настраивают AppBarLayout и Custom ToolBar. Получают базовые знания по системам контроля версий для работы с кодом.
Далее курс охватывает библиотеки для эффективной разработки. Используют ButterKnife для связывания представлений. Глубоко изучают Dagger2 для внедрения зависимостей. Рассматривают аннотации @Inject, @Provide, @Singleton и способы инъекции через конструктор, поля и методы. Работают с модулями и саб-модулями программы.
Третий блок посвящен архитектуре. Анализируют преимущества паттерна MVP. Используют RxAndroid для реактивного программирования. Интегрируют Retrofit2 с RxAndroid для сетевых запросов. Применяют библиотеку Moxy для облегчения работы с архитектурой.
Эта часть курса учит работе с фоновыми процессами. Изучают сервисы - их жизненный цикл, запуск и работу. Рассматривают синхронную работу сервисов и их привязку к активностям. Реализуют BroadcastReceiver для системных событий. Настраивают интернет-соединение в приложении.
Студенты осваивают основные HTTP-запросы POST и GET. Работают с JSON-форматом и парсерами. Изучают работу с геоданными для определения места расположения. Интегрируют Google Maps в приложения.
Завершающие модули посвящены базам данных. Обучаются подключать базу данных к проекту. Работают с SQLite - создают таблицы, управляют ними. Изучают основы SQL и составляют запросы SELECT, INSERT, DELETE, UPDATE. Используют класс Cursor и интегрируют SQLite с RxAndroid. Ознакомляются с технологией ORM для упрощения работы с базами данных.
После курса студенты эффективно работают с базами данных в Android. Разрабатывают клиент-серверные приложения. Понимают типы архитектуры и выбирают оптимальные решения. Ориентируются в актуальных трендах Android-разработки. Знают полный цикл разработки и применяют навыки в собственных проектах.
Преподаватели имеют практический опыт. Доступно корпоративное обучение. Можно обучаться в выходные дни. Существует возможность трудоустройства в ведущие IT-компании. Доступно индивидуальное обучение.