Android-разработчик. Базовый курс

Научитесь профессионально создавать приложения для самой популярной мобильной ОС. Подготовите качественное портфолио и выложите его в Google Play. По итогам обучения - пройдёте собеседование в одну из компаний-партнеров.
Подойдет ли мне этот курс?

Длительность

4 месяца

Начало

26 августа

Занятия

Пн 20:00, Чт 20:00

Общая стоимость

35 000 ₽

В месяц

10 500 ₽

В кредит:

10500 ₽ в месяц

Хочу дешевле
Общая стоимость
35 000 ₽
В месяц: 10 500 ₽
В кредит: 35000 ₽
в месяц
Продолжительность
4 месяца, 4 академических часа в неделю
Пн 20:00, Чт 20:00
Начало занятий
26 августа
Что даст вам этот курс

IT-компаниям сейчас очень не хватает опытных Android-разработчиков. На хороших специалистов ведется настоящая охота, и им готовы платить за работу до 300 тыс. рублей.

Если у вас уже есть опыт в программировании и вы хотите стать Android-разработчиком, — мы вам в этом поможем.

За время обучения вы:

  • освоите язык программирования Java;

  • научитесь профессионально создавать приложения под Android;

  • подготовитесь к собеседованию на должность Android-разработчика;

  • разработаете портфолио с использованием современных библиотек и фреймворков.

Также на курсе
Вы освоите дополнительные главы в Android-разработке, которые дадут вам большое преимущество при устройстве на работу, и повысите уровень вашей зарплаты:


  • Android Architecture Component;

  • тестирование: TDD, UI-тестирование, Mockito, тестирование Rx-кода;

  • современные фреймворки: RxJava, Dagger 2;

  • Gradle;

  • Material design.


Весь необходимый набор знаний и навыков для работы на позиции Android-разработчика

Большое преимущество на собеседованиях за счет освоения продвинутых тем

Много практики и живого общения с преподавателями

Подготовка проекта для портфолио в течение всего курса

Преподаватели
Денис Журавлев
Senior Android-разработчик в E-Legion
Дмитрий Кожевин
Android-разработчик в МИА «Россия сегодня»
Михаил Борисов
Android developer (infoware GmbH)
Антон Казаков
Руководитель направления Android-разработки в Альфа Банк
Увлекается Android-разработкой с 2011 года. Профессионально находится в этой сфере более 6 лет.

Долгое время работал над созданием приложения «Ultimate Guitar: Аккорды & Табы» — одного из лучших приложений для саморазвития 2018 года по мнению Google Play, а также сохранявшего позицию №1 в рейтинге платных приложений в США. На текущий момент работает в компании E-Legion над созданием мобильных приложений на заказ в качестве Senior Android-разработчика.

Имеет опыт работы с приложениями не только со стороны разработки, но и со стороны маркетинга и продаж. Также участвовал в разработке приложений для компаний «Мегафон» и Burger King, пробовал себя в стартапах и фрилансе.

Начинал карьеру с профессиональной веб-разработки, создавал приложения на iOS, был частью Tortuga Team в качестве разработчика игр.

Любимым приложением, разработанным за карьеру, считает Tonebridge Guitar Effects.
Программирует с 1995 года, начинал с BASIC. В процессе своей деятельности занимался разработкой систем учёта для страховых компаний. Владеет Go, Java, Kotlin.

В 2013 году переключился на профессиональную Android-разработку. Работал в компаниях «Поисковая система «Спутник» и Snaappy. В настоящее время — Android-разработчик в МИА «Россия сегодня».

Имеет два высших образования: экономическое (СЗАГС) и техническое (МГТУ им. Баумана). Является активным участником Stack Overflow.
Получил степень бакалавра на факультете компьютерных наук НИУ ВШЭ по направлению "Программная инженерия".

Работает Android-разработчиком в немецкой компании Infoware GmbH. Ведет разработку на Kotlin, не забывая о принципах SOLID и Clean Architecture.

Кроме Android интересуется Data Science, в частности NLP(Natural Language Processing).
Окончил магистратуру Казанского авиационного института по специальности «Радиотехника и телекоммуникации».

В Android-разработке с 2013 года. Разрабатывал приложения в небольших стартапах и огромных компаниях, работал в «СберТехе», руководил Android-разработкой в компании «Технократия».

На текущий момент руководит Android-разработкой в «Альфа-Банке». Оптимизирует процессы разработки и поставки фич, работает над тулингом, чтобы облегчить жизнь разработчикам.

Помимо Android-разработки, интересуется бэкенд-разработкой и DevOps-практиками. Любит решать алгоритмические задачи.
Денис
Журавлев
Дмитрий
Кожевин
Михаил
Борисов
Антон
Казаков
Преподаватели
Денис Журавлев
Senior Android-разработчик в E-Legion
Увлекается Android-разработкой с 2011 года. Профессионально находится в этой сфере более 6 лет.

Долгое время работал над созданием приложения «Ultimate Guitar: Аккорды & Табы» — одного из лучших приложений для саморазвития 2018 года по мнению Google Play, а также сохранявшего позицию №1 в рейтинге платных приложений в США. На текущий момент работает в компании E-Legion над созданием мобильных приложений на заказ в качестве Senior Android-разработчика.

Имеет опыт работы с приложениями не только со стороны разработки, но и со стороны маркетинга и продаж. Также участвовал в разработке приложений для компаний «Мегафон» и Burger King, пробовал себя в стартапах и фрилансе.

Начинал карьеру с профессиональной веб-разработки, создавал приложения на iOS, был частью Tortuga Team в качестве разработчика игр.

Любимым приложением, разработанным за карьеру, считает Tonebridge Guitar Effects.
Дмитрий Кожевин
Android-разработчик в МИА «Россия сегодня»
Программирует с 1995 года, начинал с BASIC. В процессе своей деятельности занимался разработкой систем учёта для страховых компаний. Владеет Go, Java, Kotlin.

В 2013 году переключился на профессиональную Android-разработку. Работал в компаниях «Поисковая система «Спутник» и Snaappy. В настоящее время — Android-разработчик в МИА «Россия сегодня».

Имеет два высших образования: экономическое (СЗАГС) и техническое (МГТУ им. Баумана). Является активным участником Stack Overflow.
Михаил Борисов
Android developer (infoware GmbH)
Получил степень бакалавра на факультете компьютерных наук НИУ ВШЭ по направлению "Программная инженерия".

Работает Android-разработчиком в немецкой компании Infoware GmbH. Ведет разработку на Kotlin, не забывая о принципах SOLID и Clean Architecture.

Кроме Android интересуется Data Science, в частности NLP(Natural Language Processing).
Антон Казаков
Руководитель направления Android-разработки в Альфа Банк
Окончил магистратуру Казанского авиационного института по специальности «Радиотехника и телекоммуникации».

В Android-разработке с 2013 года. Разрабатывал приложения в небольших стартапах и огромных компаниях, работал в «СберТехе», руководил Android-разработкой в компании «Технократия».

На текущий момент руководит Android-разработкой в «Альфа-Банке». Оптимизирует процессы разработки и поставки фич, работает над тулингом, чтобы облегчить жизнь разработчикам.

Помимо Android-разработки, интересуется бэкенд-разработкой и DevOps-практиками. Любит решать алгоритмические задачи.
Минимальные знания
Обязательно:
  • понимание принципов ООП;
  • опыт программирования на любом объектно-ориентированном языке программирования.
Будет плюсом:
  • знакомство с языком Java;
  • знание шаблонов проектирования;
  • умение писать чистый код;
  • навыки использования git.
Процесс обучения
Всё обучение проходит онлайн. Первый модуль по языку Java будет проходить в формате видео + онлайн-консультации с преподавателем. Весь остальной курс — в формате онлайн-вебинаров: общение с преподавателями и вашей группой в слаке курса, сдача домашних работ и получение обратной связи от преподавателя.

Вебинары идут дважды в неделю по 1,5 часа. Все вебинары сохраняются и в записи в вашем личном кабинете.

Домашнее задание выдается в среднем одно в неделю, а его выполнение занимает 3-5 часов. Мы горячо призываем заниматься такой самостоятельной работой, так как это поможет вам качественно освоить все изучаемые технологии на практике с поддержкой и обратной связью наших преподавателей.

Возникающие вопросы по материалам лекций, домашним заданиям и по выпускному проекту вы сможете задавать преподавателю в слаке или во время вебинаров.

Курс длится 5 месяцев, финальный месяц отводится для выполнения проектной работы до сдачи домашних заданий и вопросов преподавателям.

Выполнение проектной работы помогает усвоению практических навыков, а тема проекта отдельно выносится в сертификат. Во время работы над проектом студенты получают консультации и обратную связь от преподавателей в слаке группы и на проектных занятиях.
Программа обучения
Модуль 1
Подготовительный курс по Java
Модуль 2
Базовый Android
Модуль 3
Продвинутый Android
Модуль 4
Архитектурные компоненты. Реактивный подход. Внедрение зависимостей
Модуль 5
Проектная работа
Подготовительный курс по Java
Первым делом вам нужно вам нужно будет самостоятельно пройти подготовительный курс по языку Java.

Вам предстоит посмотреть 12 видео-лекций общей длительностью 26 академических часов. Помимо видео-лекций у вас будет 2 онлайн-консультации с преподавателем.


Вы изучите следующие темы:
- Базовые синтаксические конструкции и операторы в Java
- Ссылочные типы данных и обработка ошибок
- Работа с массивами и строками
- Объектно-ориентированное программирование в Java
- Unit-тестирование
- Устройство платформы Java
- Сборка и упаковка Java-приложения
- Классы-контейнеры
- Исключения
- Работа с файлами.
Тема 1: Консультация по Java. Часть 1
На этом занятии вы разберете все вопросы, которые возникли в процессе изучения подготовительного видео-курса по Java.
26 августа, 20:00 — 21:30
Тема 2: Консультация по Java. Часть 2
На этом занятии вы разберете все вопросы, которые возникли в процессе изучения подготовительного видео-курса по Java.
2 сентября, 20:00 — 21:30
Базовый Android
В этом модуле вы познакомитесь с основами разработки под Android и освоите управление экраном, элементами экрана, научитесь создавать самые разнообразные экраны и интерфейсы в соответствии с рекомендациями Material Design от разработчиков платформы Android. Сможете создавать виджеты своего приложения на главном экране смартфона. В конце модуля у вас будет уже работающее приложение с базовым функционалом.
Тема 1: Знакомство с Android Studio
Новый проект, структура проекта, Gradle, отладка кода, Git.

После занятия вы сможете: создать и отладить новый проект в Android Studio, будете понимать структуру проекта, а также работать с системой контроля версий Git.
9 сентября, 20:00 — 21:30
Тема 2: Главный компонент Android — Activity
Жизненный цикл, сохранение состояния, переходы между Activity, Intent, Context.

После занятия вы сможете: создавать новые экраны и передавать между ними данные, запускать другие приложения из своего, сохранять данные экрана при его пересоздании, а также делиться данными из приложения с друзьями.
12 сентября, 20:00 — 21:30
Домашние задания: 1
1 Начало работы над приложением по поиску фильмов. Создание проекта и страницы с фильмами.
1. Создайте проект
2. Залейте проект на GitHub
3. Добавьте описание проекта в заголовке и Read.me
4. На первом экране своего приложения создайте несколько картинок с фильмами, к каждой картинке подпишите название фильма и добавьте кнопку “Детали”
5. По нажатию на Детали - выделяйте другим цветом название выбранного фильма, открывайте новое окно, где показывайте картинку и описание фильма
6. Сохраняйте выделение фильма при возвращении со второго экрана и при повороте экрана
7. Добавьте кнопку “Пригласить друга” и отправляйте приглашение по вашему выбору (почта, смс, социальные сети)
8. * Добавьте на втором экране checkbox “Нравится” и текстовое поле для комментария. Возвращайте значение чекбокса и текст комментария при переходе обратно на первый экран

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Интерфейс экрана. Базовые элементы
View, View group, элементы интерфейса, меню экрана, панель навигации.

После занятия вы сможете: заполнять экраны графическими элементами (кнопки, выкидное меню, поля ввода, изображения и т.д.), создавать меню экрана и панель навигации.
16 сентября, 20:00 — 21:30
Тема 4: Интерфейс экрана. Material design
Material Design, элементы Material Design, анимация.
После занятия вы сможете: создавать элементы в стиле Material Design, управлять ими, а также выполнять простые анимации (изменение положения, прозрачности и ориентации).
19 сентября, 20:00 — 21:30
Домашние задания: 1
1 Кнопка “пригласить друга”. Добавление анимации. Добавление новых фильмов в приложение.
1. Нарисуйте интерфейс первого и второго экранов в соответствии с вашими навыками
2. Добавьте кнопку меню и перенесите туда функционал “Пригласить друга”
3. Добавьте Navigation Drawer. Разместите там два пункта: О приложении и Главный экран
4. Добавьте анимацию при нажатии на картинку фильма, после которой будет открываться описание фильма
5. * Создайте новый экран “Добавить фильм” и добавьте в Меню кнопку добавления фильма, по нажатию на которую открывается новый экран.
На нем сделайте два поля: название фильма, описание. При возвращении на главный экран - добавляйте новый фильм к уже существующим (в качестве картинки используйте заглушку)
6. * Самостоятельно изучите такие элементы как chips, bottom sheet, floating action button

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.

Тема 5: Интерфейс экрана. Использование стилей и ресурсов
Стили и темы, элементы управления, классификация ресурсов, векторы.

После занятия вы сможете: применять отдельные стили для всего приложения, конкретных экранов или элементов, создавать свои уведомления, создавать свою панель управления вверху экрана, а также узнаете, какие ресурсы в каких случаях использовать в своем приложении.
23 сентября, 20:00 — 21:30
Тема 6: Интерфейс экрана. Продвинутая верстка
CoordinatorLayout, ConstraintLayout, DIalog.
После занятия вы сможете: использовать наиболее мощные и продвинутые контейнеры для верстки экранов, а также создавать кастомные диалоговые окна.
26 сентября, 20:00 — 21:30
Домашние задания: 1
1 Улучшение UI приложения по поиску фильмов.
1. Добавьте snackbar или toast в свое приложение
2. Используйте CoordinatorLayout или ConstraintLayout вместо текущих контейнеров
3. Добавьте на главный экран CollapsingToolbar, и когда он в развернутом состоянии - отображайте в нем какой-то задний фон
4. Перенесите весь хардкод в ресурсы приложения
5. Примените собственные стили и темы в приложении
6. Добавьте макет для приложения в ландшафтной ориентации
7. Добавьте какое-нибудь изображение в векторе в ваше приложение
8. Добавьте в NavigationDrawer пункт Выход и отображайте диалоговое окно выхода из приложения
9. * Самостоятельно изучите такие элементы UI как BottomBar и BottomSheetDialogFragment

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 7: Интерфейс экрана. Виджеты
Виджеты, отладка приложения.
После занятия вы сможете создавать разнообразные виджеты своего приложения на главном экране смартфона, а также узнаете про шорткаты Android Studio и возможности отладки приложения.
30 сентября, 20:00 — 21:30
Тема 8: Fragments
Жизненный цикл, FragmentManager, передача данных между Activity и Fragment’ом.
После занятия вы сможете: создавать экран в экране, несколько экранов рядом, передавать данные между несколькими экранами.
3 октября, 20:00 — 21:30
Домашние задания: 1
1 Переход на единственную Activity и несколько Fragments. Создание виджета.
1. Переведите свое приложение на единственную Активити и несколько Фрагментов
2. * Используйте для навигации между фрагментами NavigationDrawer, BottomNavigation или BottomAppBar
3. * Используйте retain fragment без UI для сохранения состояния вашей Активити во время пересоздания
4. * Создайте виджет для своего приложения

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 9: Списки
RecyclerView, LayoutManager, Adapter, ViewHolder, ItemDecorator.
После занятия вы сможете: создавать списки и управлять ими, удалять и добавлять элементы, кастомизировать списки под свои нужды.
7 октября, 20:00 — 21:30
Домашние задания: 1
1 Создание механизма “избранных” фильмов.
1. Переведите ваше приложение на отображение списков
2. Дополните функционал вашего приложения сохранением фильмов в список избранного (избранное пока храните в обычном ArrayList на уровне Активити).
Используйте для этого или долгое нажатие на элемент списка, или тап на ImageView в виде сердечка рядом с названием фильма
3. Создайте экран, где будет отображаться список Избранного. Сделайте так, чтобы в список можно было добавлять элементы и удалять их
4. * Самостоятельно изучите ReciclerView.ItemAnimator, создайте свои собственные анимации

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Продвинутый Android
В этом модуле вы углубитесь в платформу Android, научитесь определять местоположение, хранить данные, выполнять задачи асинхронно и в фоновом режиме, принимать сообщения от операционной системы и писать тесты. Вы сможете загружать информацию и изображения из интернета, не отвлекая пользователя, управлять загрузкой в зависимости от состояния смартфона, хранить настройки приложения, пользовательские списки (например, история поиска и любимые фильмы). Покроете свое приложение тестами. А также сможете публиковать разные версии своего приложения в магазине приложений.
Тема 1: Выходим в интернет
OkHttp, Retrofit, Gson, Glide.
После занятия вы сможете: загружать данные из интернета и передавать данные на удаленный сервер, загружать изображения.
10 октября, 20:00 — 21:30
Тема 2: Полезные инструменты
GPS и Location, Permissions, SharedPreferences.
После занятия вы сможете: определять местоположение телефона, использовать карты и навигацию, работать с пользовательскими разрешениями и сохранять данные на длительное время.
14 октября, 20:00 — 21:30
Домашние задания: 1
1 Получение информации о фильмах из публичного API. Добавление функционала по навигации до ближайшего кинотеатра.
1. Подключите апи сервера с фильмами и скачивайте фильмы с сервера
2. Используйте Glide для загрузки изображений
3. Добавьте функционал позиционирования для вашего приложения: на отдельном экране отображайте наличие кинотеатров в городе, в котором находится пользователь
4. Сохраняйте список избранного в SharedPreferences
5. * Добавьте функционал навигации до ближайшего кинотеатра, используя API карт на ваш выбор
6. * Продумайте, как будут загружаться фильмы, когда пользователь дойдет до конца списка, реализуйте свое решение

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Компоненты Android. Часть 1
Content Provider, SQLite.
После занятия вы сможете: обмениваться данными между приложениями и использовать базу данных для хранения больших объемов информации.
17 октября, 20:00 — 21:30
Тема 4: Компоненты Android. Часть 2
Service, работа в фоне и на переднем плане, Push.
После занятия вы сможете: запускать длительные задачи, такие как загрузка изображений, в фоновом режиме и продолжать выполнение длительных задач, даже если пользователь свернул приложение.
21 октября, 20:00 — 21:30
Домашние задания: 1
1 Добавление базы данных с фильмами в приложение.
1. Настройте базу данных в своем приложении и храните в ней все фильмы, ссылки на изображения
2. При заходе пользователя в приложение - обновляйте данные по фильмам в вашей БД (удаляйте все данные, заменяя их на новые, но не чаще раза в день), а если БД обновлена - загружайте данные из нее, а не из интернета
3. Загружайте данные в БД используя сервис
4. Отображайте пуш-уведомление для пользователя, что данные в БД обновлены. При тапе на уведомление - открывайте главный экран приложения
5. * Самостоятельно добавьте Swipe to refresh на главный экран, чтобы пользователь мог в любое время обновить данные (даже если в БД свежие данные)
6. * Самостоятельно настройте отправку и получение пуш-уведомлений через Firebase Cloud Messaging

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 5: Компоненты Android. Часть 3
BroadcastReceiver, LocalBroadcastReceiver.
После занятия вы сможете: принимать сообщения от операционной системы (например о подключении к wi-fi или к розетке), а также передавать сообщения внутри своего приложения.
24 октября, 20:00 — 21:30
Тема 6: Многопоточность в Android
Thread и AsyncTask, Handler и HandlerThread, Timer, AlarmManager, JobScheduler.
После занятия вы сможете: выполнять задачи приложения асинхронно и в фоновом режиме, выполнять задачи к определенному времени, а также подбирать способ асинхронного выполнения в соответствии с потребностями и контекстом.
28 октября, 20:00 — 21:30
Домашние задания: 1
1 Отслеживание событий “есть интернет/нет”, “Есть wifi/нет”. Добавление функционала напоминания о выходе нового фильма.
1. Настройте BroadcastReceiver для получения событий: есть/нет интернета, есть/нет wi-fi
2. Используйте JobScheduler для обновления БД
3. Добавьте в ваше приложение функционал напоминания о выходе фильма или новой серии: пользователь должен ввести название фильма и дату, когда ему отобразится пуш-уведомление.
Добавьте в меню кнопку напомнить (реализуйте интерфейс напоминания в отдельном окне или диалоге), используйте AlarmManager для напоминания о выходе новой серии или фильма
4. * Используйте JobScheduler для регулярной синхронизации данных с сервером

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 7: Тестирование в Android
Принципы разработки тестируемых приложений, test driven development, Unit-тесты.
После занятия вы сможете: писать Unit-тесты для своего приложения и понимать основы тестируемых приложений.
31 октября, 20:00 — 21:30
Тема 8: Тестирование для Android: Mockito
После занятия вы сможете: углубиться в тестирование и писать более обширные и сложные тесты для функционала приложения, создавать “моковые” объекты для тестирования.
4 ноября, 20:00 — 21:30
Домашние задания: 1
1 Написание Unit-тестов для приложения.
1. Напишите unit-тесты для своих классов, в том числе такие, которые используют Mockito
2. * Покройте тестами все значимые части приложения

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 9: Публикация приложения
Builds, Flavors, Flavor dimensions, Play Store.
После занятия вы сможете: создавать различные версии своего приложения (например, платная и бесплатная версии), а также понимать, что требуется для публикации приложения в Play Store.
7 ноября, 20:00 — 21:30
Домашние задания: 1
1 Публикация в Google Play.
1. Выложите приложение в Google Play и обновляйте его уже там
2. * Подумайте, какой платный функционал может быть у вашего приложения и создайте для этого отдельный flavor

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Архитектурные компоненты. Реактивный подход. Внедрение зависимостей
В этом модуле вы познакомитесь с актуальными подходами в проектировании приложения и со стеком библиотек, которые стали индустриальным стандартом в мобильной разработке. После завершения модуля вы сможете создавать приложения на профессиональном уровне, учитывая требования рынка и работодателей.
Тема 1: Архитектурные компоненты. Часть 1
Понятие и примеры архитектуры приложения, ViewModel, LiveData, LifeCycleOwner.
После занятия вы сможете: писать приложения в архитектурном паттерне MVVM и познакомитесь с архитектурными компонентами от разработчиков OS Android. Также вы будете понимать принципы построения архитектуры мобильных приложений
11 ноября, 20:00 — 21:30
Тема 2: Архитектурные компоненты. Часть 2
Room, DataBinding.
После занятия вы сможете: использовать библиотеки от разработчиков OS Android для хранения данных (база данных Room) и для обновления данных непосредственно в макете XML (библиотека DataBinding)
14 ноября, 20:00 — 21:30
Домашние задания: 1
1 Переход на архитектурные компоненты. Обмен данными между фрагментами. Использвание DataBinding.
1. Переведите свое приложение на архитектурные компоненты
2. * Обменивайтесь данными между фрагментами или фрагментом и активити используя ViewModel
3. * Используйте DataBinding в своем приложении

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Архитектурные компоненты. Часть 3
WorkManager
После занятия вы сможете: выполнять любую фоновую или отложенную работу приложения в соответствии с видением разработчиков OS Android.
18 ноября, 20:00 — 21:30
Тема 4: RxJava. Часть 1
Концепция функционального программирования, Observable, Subscriber, основные операторы.
После занятия вы сможете: пользоваться самой мощной и популярной библиотекой для асинхронной работы приложения.
21 ноября, 20:00 — 21:30
Домашние задания: 1
1 WorkManager, Rx.
1. Обновляйте БД с помощью WorkManager
2. Выполняйте запросы в интернет используя Rx
3. * Переведите все запросы в БД на Rx
4. * Внедрите поиск по названию фильма в своем приложении и осуществляйте поиск на сервере или в БД через Rx

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 5: RxJava. Часть 2
onError, backpressure, Subject, продвинутые операторы.
После занятия вы сможете: использовать библиотеку RxJava на полную мощность, обрабатывать ошибки и подписываться на изменение объектов и данных.
25 ноября, 20:00 — 21:30
Тема 6: Dagger 2. Часть 1
Основы: Module, Component.
После занятия вы сможете: упростить и автоматизировать внедрение зависимостей в своем приложении, сделать свое приложение более тестируемым.
28 ноября, 20:00 — 21:30
Домашние задания: 1
1 Использование Rx и Dagger.
1. В запросах на сервер через Rx - учитывайте и обрабатывайте ошибки запросов корректно, учитывайте backpressure
2. Используйте Даггер для инжекта SharedPreferences
3. * Доработайте поиск по названию используя debounce
4. * Самостоятельно изучите тему Scopes в Даггере, внедряйте ViewModel с помощью Даггера и разделите ваши зависимости на скоупы

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 7: Dagger 2. Часть 2
Практическое занятие: ответы на вопросы и разбор домашнего задания
2 декабря, 20:00 — 21:30
Тема 8: Тестирование
● Тестируем Rx
● Тестируем Dagger
5 декабря, 20:00 — 21:30
Домашние задания: 1
1 Покрытие приложения тестами.
1. Доработайте свои тесты, чтобы они учитывали все нововведения вашего приложения, включая Dagger и Rx
Проектная работа
На протяжении всего курса вы будете работать над приложением по поиску фильмов. В конце курса у вас будет две недели на то, чтобы доработать ваше приложение в соответствии с запланированным функционалом, добавить новые фичи и отрефакторить код. В процессе доработки вы будете регулярно консультироваться с преподавателем и разбирать код своего приложения. В конце модуля у вас будет полноценное приложение, сделанное на профессиональном уровне и готовое к публикации.
Тема 1: Консультация по проекту
12 декабря, 20:00 — 21:30
Тема 2: Защита проектов
19 декабря, 20:00 — 21:30
Домашние задания: 1
1 Сдача проекта
Пожалуйста, сдайте:
- ссылку на github-репозиторий с вашим проектом
- описание проекта
Выпускной проект
На протяжении всего курса вы будете работать над приложением по поиску фильмов. Приложение будет включать в себя возможность поиска фильма или сериала, сортировки по контенту или ключевому слову. Будет содержать экраны с детальным описанием фильма, историей и любимыми фильмами. Также в приложении будет возможность поделиться с друзьями фильмом и мнением о нем, а также настройка уведомлений о выходе нового фильма или эпизода любимого сериала.

Последние 2 недели курса посвящены доработке проекта под руководством преподавателя, что позволит вам получить качественное портфолио.
После обучения вы

  • заберете с собой полный комплект обучающих материалов: видеозаписи всех вебинаров, презентации к занятиям, исходные коды программ;

  • сохраните пример разработанного приложения;

  • получите сертификат о прохождении курса;

  • получите приглашение пройти собеседование в компаниях-партнерах (эту возможность получают самые успешные студенты).

Дата выдачи сертификата: 23 января 2020 года
Ваш сертификат

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Android-разработчик. Базовый курс»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Генеральный директор ООО “Отус Онлайн-Образование”
Виталий Чибриков

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018г.

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Android-разработчик. Базовый курс»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Генеральный директор ООО “Отус Онлайн-Образование”
Виталий Чибриков

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018г.
Общая стоимость
35 000 ₽
В месяц: 10 500 ₽
В кредит: ₽ в месяц
Продолжительность
4 месяца
Начало занятий
26 августа