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

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

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

4 месяца

Начало

26 августа

Занятия

Чт 20:00, Пн 20:00

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

40 000 ₽

В месяц

12 500 ₽

В кредит:

12500 ₽ в месяц

Хочу дешевле
Общая стоимость
40 000 ₽
В месяц: 12 500 ₽
В кредит: 40000 ₽
в месяц
Продолжительность
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-разработчика

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

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

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

Всё о курсе «Android-разработчик. От Java до Kotlin», 20 августа в 20:00
День Открытых Дверей — отличная возможность узнать подробнее о программе курсов «Android-разработчик. Базовый» и «Android-разработчик. Продвинутый», особенностях онлайн-формата, навыках, компетенциях и перспективах, которые ждут выпускников после обучения.

Также преподаватели Антон Казаков и Денис Журавлёв расскажут о своём профессиональном опыте и ответят на вопросы участников. Поэтому, если есть вопрос, запишитесь на онлайн-трансляцию и задайте его в прямом эфире!
Преподаватели
Денис Журавлев
Android Team Lead в Mediapark
Дмитрий Кожевин
Android-разработчик в МИА «Россия сегодня»
Михаил Борисов
Android developer (infoware GmbH)
Антон Казаков
Руководитель направления Android-разработки в Альфа Банк
Увлекается Android-разработкой с 2011 года. Профессионально находится в этой сфере более 6 лет.

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

Имеет опыт работы с приложениями не только со стороны разработки, но и со стороны маркетинга и продаж. Также участвовал в разработке приложений для компаний «Мегафон» и 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-практиками. Любит решать алгоритмические задачи.

Денис
Журавлев
Дмитрий
Кожевин
Михаил
Борисов
Антон
Казаков
Преподаватели
Денис Журавлев
Android Team Lead в Mediapark
Увлекается Android-разработкой с 2011 года. Профессионально находится в этой сфере более 6 лет.

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

Имеет опыт работы с приложениями не только со стороны разработки, но и со стороны маркетинга и продаж. Также участвовал в разработке приложений для компаний «Мегафон» и 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
Модуль 3
Многопоточность. Тестирование. Публикация.
Модуль 5
Архитектурные компоненты. Реактивный подход. Внедрение зависимостей
Модуль 6
Проектная работа
Подготовительный курс по 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.
5 сентября, 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: Интерфейс экрана. Виджеты
виджеты
После занятия вы сможете создавать разнообразные виджеты своего приложения на главном экране смартфона
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
Лектор: Михаил Борисов
Многопоточность. Тестирование. Публикация.
Тема 1: Многопоточность в 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. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 2: Тестирование в Android
Принципы разработки тестируемых приложений, test driven development, Unit-тесты.
После занятия вы сможете: писать Unit-тесты для своего приложения и понимать основы тестируемых приложений.
7 ноября, 20:00 — 21:30
Лектор: Михаил Борисов
Тема 3: Тестирование для Android: Mockito
После занятия вы сможете: углубиться в тестирование и писать более обширные и сложные тесты для функционала приложения, создавать “моковые” объекты для тестирования.
11 ноября, 20:00 — 21:30
Лектор: Денис Журавлев
Домашние задания: 1
1 Написание Unit-тестов для приложения.
1. Напишите unit-тесты для своих классов, в том числе такие, которые используют Mockito
2. * Покройте тестами все значимые части приложения

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

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

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Архитектурные компоненты. Часть 3
WorkManager
После занятия вы сможете: выполнять любую фоновую или отложенную работу приложения в соответствии с видением разработчиков OS Android.
25 ноября, 20:00 — 21:30
Лектор: Дмитрий Кожевин
Тема 4: RxJava. Часть 1
Концепция функционального программирования, Observable, Subscriber, основные операторы.
После занятия вы сможете: пользоваться самой мощной и популярной библиотекой для асинхронной работы приложения.
28 ноября, 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 на полную мощность, обрабатывать ошибки и подписываться на изменение объектов и данных.
2 декабря, 20:00 — 21:30
Лектор: Михаил Борисов
Тема 6: Dagger 2. Часть 1
Основы: Module, Component.
После занятия вы сможете: упростить и автоматизировать внедрение зависимостей в своем приложении, сделать свое приложение более тестируемым.
5 декабря, 20:00 — 21:30
Лектор: Дмитрий Кожевин
Домашние задания: 1
1 Использование Rx и Dagger.
1. В запросах на сервер через Rx - учитывайте и обрабатывайте ошибки запросов корректно, учитывайте backpressure
2. Используйте Даггер для инжекта SharedPreferences
3. * Доработайте поиск по названию используя debounce
4. * Самостоятельно изучите тему Scopes в Даггере, внедряйте ViewModel с помощью Даггера и разделите ваши зависимости на скоупы

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

Последние 2 недели курса посвящены доработке проекта под руководством преподавателя, что позволит вам получить качественное портфолио.
Прошедшие открытые вебинары по курсу
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Gradle: сборка приложений под Android
Денис Журавлев
Для доступа к прошедшим мероприятиям необходимо пройти входное тестирование
Возможность пройти вступительное тестирование повторно появится только через 2 недели
Результаты тестирования будут отправлены вам на e-mail, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Пройти вступительное тестирование
После обучения вы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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