Android-разработчик. Базовый курс | OTUS
СКИДКА 29% на все курсы только в эти выходные!
Успейте начать обучение по выгодной цене! Активируйте промокод Happy_Holydays20
Выбрать курс

Курсы

Специализации Курсы в разработке Подготовительные курсы
+7 499 110-61-65

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

Обучение на Android-разработчика на Kotlin, подготовка качественного портфолио. Курс для программистов с опытом на любом ООП языке.
Подойдет ли мне этот курс?

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

5 месяцев

Начало

31 марта

Занятия

Пт 20:00, Вт 20:00

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

50 000 ₽

В месяц

12 500 ₽

В кредит:

12500 ₽ в месяц

Хочу дешевле
Общая стоимость
50 000 ₽
В месяц: 12 500 ₽
В кредит: 50000 ₽
в месяц
Продолжительность
5 месяцев, 4 академ. часа в неделю
Пт 20:00, Вт 20:00
Начало занятий
31 марта
Что даст вам этот курс

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

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

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

  • подготовитесь к собеседованию;

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


На курсе много продвинутых тем. Например: android architecture component, тестирование мобильных приложений, RxJava, Dagger 2, многопоточность в Android, Koin, Material Design и т.д.

Сравнение с Продвинутым курсом Android


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

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

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

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

Быстрый переход на Kotlin для Android-разработки, 4 марта в 20:00
Давно хотели познакомиться с Kotlin, но не доходили руки? Всё ещё пишете на Java? Приходите на открытый урок!

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

Также преподаватели Денис Журавлёв и Антон Казаков расскажут о своём профессиональном опыте и ответят на вопросы участников. Поэтому, если есть вопрос, запишитесь на онлайн-трансляцию и задайте его в прямом эфире!
Денис
Журавлев
Предыдущий день открытых дверей
Преподаватели
Денис Журавлев
Android Team Lead в Mediapark
Дмитрий Кожевин
Android-разработчик в МИА «Россия сегодня»
Михаил Борисов
Михаил Кулага
Android Developer в Peg b Technology
Артем Первушов
Senior Software Developer (Luxoft)
Михаил Валуйский
Android Team Lead в «Билайн»
Виталий Раевский
Архитектор мобильных приложений в Alfa-Bank
Антон Мачихин
Старший разработчик в "ООО Открытые Решения"
Увлекается 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.

Получил степень бакалавра на факультете компьютерных наук НИУ ВШЭ по направлению "Программная инженерия".

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

Кроме Android интересуется Data Science, в частности NLP(Natural Language Processing).

Android-разработчик с 7-летним стажем. Занимался разработкой как на аутсорсинге, так и в продуктовых компаниях. Имеет опыт запуска собственного проекта (более 500.000 скачиваний).

Увлёкся Android-разработкой, ещё будучи студентом 3-го курса. Работал в EPAM, ForteGroup, Aviasales, Peg-B. Сейчас разрабатывает приложения в финтех-стартапе.

Технологии: Android, Java, Kotlin.

Образование: БГУИР, «Вычислительные машины, системы и сети».

Окончил Брянский государственный технологический университет (факультет информационных технологий).

Профессионально занимается программированием с 2010 года. Возглавлял IT-отдел в «Уралсибе», работал системным архитектором в «ЛАНИТ», «Ай-Теко», Uventex Inc. Разрабатывал zakupki.gov, kupivip, личный кабинет продавца в «Почте России».

Преподавал в «Иннополис», МГТУ и «Люксофт». Сертифицированный специалист Android ATC. На текущий момент занимает должность Senior Software Developer в Luxoft.

Занимается разработкой мобильных приложений в компании «Билайн» в качестве руководителя команды. Работал как в небольших стартапах, так и в крупных компаниях: Rambler&Co, Lazada (была куплена компанией Alibaba).

Начинал свой путь как бэкенд-разработчик, но вскоре заинтересовался программированием под Android ОС и с тех пор занимается программированием под мобильные платформы. Одним из самых интересных периодов карьеры считает разработку с нуля мобильного приложения «Мой Билайн», а также формирование отдела мобильной разработки для последующего сопровождения и улучшения проектов компании.

Окончил Южный федеральный университет, (кафедра Математического обеспечения ЭВМ). После этого учился в Техническом университете Гамбурга на факультете компьютерных наук.

Более 11 лет опыта веб-разработки и более 5 лет разработки на Android. Создавал приложения для Nissan, London Olimpiade 2012, Renault, Mitchell Oil и Esse Club. Специалист по архитектуре мобильных приложений и реинжинирингу ПО. Участник отраслевых мероприятий, лекций и докладов, спикер на Mobile Talks Android и Aps Conf.

Работал в Partner Ltd, Mir Bank, BlackWood Design Studio, Absolute Robot Inc. Имеет опыт управления командой разработчиков в качестве тимлида.

Преподавал Java и веб-разработку в STEP IT Academy. Основные навыки — Java, Kotlin, Android development.

В Android-разработке с 2014 года. Прошел путь от тестировщика до программиста Java Enterprise. Написал плагин для Android Studio, помогающий генерировать паттерн MVVM + Clean. Также участвовал в разработке навигации внутри помещения с помощью iBeacon и RaspberryPi.

Разрабатывал приложения для Музея русского импрессионизма, аэропорта, фитнес-трекера. Принимал участие в разработке приложения для страховой компании и онлайн-банка.

Окончил КГТУ им. Туполева по специальности "Информационная безопасность телекоммуникационных систем".

Денис
Журавлев
Дмитрий
Кожевин
Михаил
Борисов
Михаил
Кулага
Артем
Первушов
Михаил
Валуйский
Виталий
Раевский
Антон
Мачихин
Преподаватели
Денис Журавлев
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.

Михаил Борисов
Получил степень бакалавра на факультете компьютерных наук НИУ ВШЭ по направлению "Программная инженерия".

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

Кроме Android интересуется Data Science, в частности NLP(Natural Language Processing).

Михаил Кулага
Android Developer в Peg b Technology
Android-разработчик с 7-летним стажем. Занимался разработкой как на аутсорсинге, так и в продуктовых компаниях. Имеет опыт запуска собственного проекта (более 500.000 скачиваний).

Увлёкся Android-разработкой, ещё будучи студентом 3-го курса. Работал в EPAM, ForteGroup, Aviasales, Peg-B. Сейчас разрабатывает приложения в финтех-стартапе.

Технологии: Android, Java, Kotlin.

Образование: БГУИР, «Вычислительные машины, системы и сети».

Артем Первушов
Senior Software Developer (Luxoft)
Окончил Брянский государственный технологический университет (факультет информационных технологий).

Профессионально занимается программированием с 2010 года. Возглавлял IT-отдел в «Уралсибе», работал системным архитектором в «ЛАНИТ», «Ай-Теко», Uventex Inc. Разрабатывал zakupki.gov, kupivip, личный кабинет продавца в «Почте России».

Преподавал в «Иннополис», МГТУ и «Люксофт». Сертифицированный специалист Android ATC. На текущий момент занимает должность Senior Software Developer в Luxoft.

Михаил Валуйский
Android Team Lead в «Билайн»
Занимается разработкой мобильных приложений в компании «Билайн» в качестве руководителя команды. Работал как в небольших стартапах, так и в крупных компаниях: Rambler&Co, Lazada (была куплена компанией Alibaba).

Начинал свой путь как бэкенд-разработчик, но вскоре заинтересовался программированием под Android ОС и с тех пор занимается программированием под мобильные платформы. Одним из самых интересных периодов карьеры считает разработку с нуля мобильного приложения «Мой Билайн», а также формирование отдела мобильной разработки для последующего сопровождения и улучшения проектов компании.

Окончил Южный федеральный университет, (кафедра Математического обеспечения ЭВМ). После этого учился в Техническом университете Гамбурга на факультете компьютерных наук.

Виталий Раевский
Архитектор мобильных приложений в Alfa-Bank
Более 11 лет опыта веб-разработки и более 5 лет разработки на Android. Создавал приложения для Nissan, London Olimpiade 2012, Renault, Mitchell Oil и Esse Club. Специалист по архитектуре мобильных приложений и реинжинирингу ПО. Участник отраслевых мероприятий, лекций и докладов, спикер на Mobile Talks Android и Aps Conf.

Работал в Partner Ltd, Mir Bank, BlackWood Design Studio, Absolute Robot Inc. Имеет опыт управления командой разработчиков в качестве тимлида.

Преподавал Java и веб-разработку в STEP IT Academy. Основные навыки — Java, Kotlin, Android development.

Антон Мачихин
Старший разработчик в "ООО Открытые Решения"
В Android-разработке с 2014 года. Прошел путь от тестировщика до программиста Java Enterprise. Написал плагин для Android Studio, помогающий генерировать паттерн MVVM + Clean. Также участвовал в разработке навигации внутри помещения с помощью iBeacon и RaspberryPi.

Разрабатывал приложения для Музея русского импрессионизма, аэропорта, фитнес-трекера. Принимал участие в разработке приложения для страховой компании и онлайн-банка.

Окончил КГТУ им. Туполева по специальности "Информационная безопасность телекоммуникационных систем".

Необходимые знания
Обязательно:
  • опыт программирования на любом объектно-ориентированном языке программирования.
Будет плюсом:
  • знакомство с языком Java;
  • знание шаблонов проектирования;
  • умение писать чистый код;
  • навыки использования git.
Подготовительный курс

  • Курс по Java-разработке для начинающих программистов

  • Занятия в формате видео и проверочные тесты

  • Все необходимые знания и навыки для поступления на курсы "Разработчик Java" и "Android-разработчик.Базовый курс"

Записаться
Процесс обучения
Всё обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в слаке курса, сдача домашних работ и получение обратной связи от преподавателя.

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

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

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

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

Выполнение проектной работы помогает усвоению практических навыков, а тема проекта отдельно выносится в сертификат. Во время работы над проектом студенты получают консультации и обратную связь от преподавателей в слаке группы и на проектных занятиях.
Программа обучения
Модуль 1
Kotlin
Модуль 2
Основы Android-разработки
Модуль 3
Архитектура, работа с сетью и хранение данных
Модуль 4
Компоненты Android
Модуль 5
Реактивный подход, внедрение зависимостей
Модуль 6
Тестирование и публикация
Модуль 7
Проектная работа
Kotlin
После этого занятия вы сможете оперировать основными конструкциями языка Kotlin JVM, сможете писать код в kotlin-стиле, использовать kotlin extensions.
Тема 1: Основы Kotlin. Стандартная библиотека. Часть 1
31 марта, 20:00 — 21:30
Тема 2: Основы Kotlin. Стандартная библиотека. Часть 2
3 апреля, 20:00 — 21:30
Основы Android-разработки
Тема 1: Главный компонент Android — Activity
после занятия вы сможете создавать новые экраны и передавать между ними данные, запускать другие приложения из своего, сохранять данные экрана при его пересоздании.

Темы:
— жизненный цикл Activity;
— способ сохранения состояния Activity onSaveInstanceState;
— явные и неявные intent и AndroidManiest.xml;
— передача данных между activity, kotlin parcelize;
— activity stack и flags;
— startActivityForResult;
— несколько слов о Context.
7 апреля, 20:00 — 21:30
Домашние задания: 1
1 Начало работы над приложением по поиску фильмов. Создание проекта и страницы с фильмами.
1. Создайте проект
2. Залейте проект на GitHub
3. Добавьте описание проекта в заголовке и Read.me
4. На первом экране своего приложения создайте несколько картинок с фильмами. К каждой картинке добавьте название фильма и кнопку “Детали”. Изображения любые, название и описание произвольные
5. По нажатию на Детали - выделяйте другим цветом название выбранного фильма, открывайте новое окно, где показывайте картинку и описание фильма
6. Сохраняйте выделение фильма при повороте и при возвращении со второго экрана
7. Добавьте кнопку “Пригласить друга” и отправляйте приглашение по вашему выбору (почта, смс, социальные сети)
8. * Добавьте на втором экране checkbox “Нравится” и текстовое поле для комментария. Возвращайте значение чекбокса и текст комментария при переходе обратно на первый экран. Возвращенные значения чекбокса и текстового комментария выводим в лог

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 2: Интерфейс экрана. Основные элементы
после занятия вы сможете создавать экраны с интерактивными элементами, используя современные подходы к верстке.

Темы:
— основные виджеты: EditText, TextView, Button, ImageView, ScrollView, HorizontalScrollView, Switch, ProgressBar;
— основные контейнеры: FrameLayout, LinearLayout, RelativeLayout;
— продвинутый контейнер: ConstraintLayout.
10 апреля, 20:00 — 21:30
Тема 3: Интерфейс экрана. Стили, ресурсы, диалоги
после занятия вы сможете создавать свои стили для приложения, конкретных экранов или элементов. Научитесь пользоваться диалогами и создавать свои собственные. А также узнаете, какие ресурсы в каких случаях использовать в своем приложении.

Что рассмотрим:
— стили и темы приложения;
— ресурсы, типы ресурсов;
— квалификаторы ресурсов;
— векторную графику;
— диалоги, виды диалогов;
— кастомные диалоги.
14 апреля, 20:00 — 21:30
Домашние задания: 1
1 Использование тем и квалификаторов.
1. Создайте различные стили для текста заголовка и описания
2. Используйте стили на экране со списком и детальном экране
3. Добавьте поддержку английского и русского языков для элементов интерфейса, например, для кнопки "детали" и "пригласить друга"
4. Используйте векторное изображение из стандартного набора для кнопки пригласить друга
5. Добавьте поддержку альбомной ориентации. Интерфейс должен отличаться. Например, в портретной 2 фильма в строке списка, а в альбомной 4
6. Создайте кастомный диалог подтверждения при выходе из приложения при нажатии кнопки back (использовать метод onBackPressed)
7. * Добавьте кнопку переключения темы в приложении, например дневной\ночной

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

Темы:
— RecyclerView: LayoutManager, Adapter и ViewHolder;
— добавление и удаление элементов списка;
— ItemDecorator.
17 апреля, 20:00 — 21:30
Домашние задания: 1
1 Работа со списками.
1. Переведите ваше приложение на отображение списков с помощью RecyclerView
2. Дополните функционал вашего приложения сохранением фильмов в список избранного (избранное пока храните в обычном List на уровне Activity). Используйте для этого или долгое нажатие на элемент списка, или тап на ImageView в виде сердечка рядом с названием фильма
3. Создайте экран, где будет отображаться список Избранного
4. Сделайте так, чтобы в список можно было добавлять элементы и удалять их
5. * Написать собственный ItemDecoration
6. * Самостоятельно изучите ReciclerView.ItemAnimator, создайте свои собственные анимации

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

Темы:
— AppBar, ActionBar, Toolbar, CollapsingToolbar;
— Navigation Drawer;
— CoordinatorLayout;
— Snackbar, Toast.
21 апреля, 20:00 — 21:30
Тема 6: Fragments
изучим жизненный цикл, FragmentManager, передачу данных между Activity и Fragment’ом. После занятия вы сможете создавать экран в экране, несколько экранов рядом, передавать данные между несколькими экранами.

Темы:
— подробный разбор Fragment’ов: жизненный цикл, добавление и удаление фрагментов с помощью FragmentManager;
— Back Stack для фрагментов;
— взаимодействие Activity и Fragment;
— retained fragment.
24 апреля, 20:00 — 21:30
Домашние задания: 1
1 Фрагменты и навигация.
1. Переведите свое приложение на единственную Activity и несколько фрагментов
2. Для навигации между фрагментами используйте NavigationDrawer или BottomNavigation
3. Добавьте CoordinatorLayout + CollapsingToolbar на детальный экран фильма
4. Добавьте Snackbar или Toast, сообщающий об успехе добавления\удаления из избранного
5. * Добавьте возможность отмены действия в snackbar

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 7: Анимация
после занятия вы сможете анимировать векторные изображения, элементы интерфейса и их свойства, выполнять анимированные переходы между состояниями экрана.

Темы:
— Property Animation;
— View Animations;
— Drawable Animations;
— Transtions.
28 апреля, 20:00 — 21:30
Архитектура, работа с сетью и хранение данных
Тема 1: Выходим в интернет
после занятия вы сможете загружать данные из интернета и передавать данные на удалённый сервер, загружать изображения.

Темы:
— OkHttp;
— Retrofit: синхронная и асинхронная загрузка;
— Gson;
— Glide.
1 мая, 20:00 — 21:30
Домашние задания: 1
1 Подключение приложения к интернету.
1. Подключите API сервера с фильмами и загружайте данные о фильмах с сервера при запуске приложения. Во время загрузки должен отображаться индикатор на ваш выбор
2. Используйте Glide для загрузки изображений
3. Добавьте пагинацию (подгрузку новых фильмов при скролле)
4. * Добавьте pull to refresh

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 2: Архитектурные компонеты
после занятия вы сможете писать приложения в архитектурном паттерне MVVM и познакомитесь с архитектурными компонентами от разработчиков OS Android. Также вы будете понимать принципы построения архитектуры мобильных приложений.

Темы:
— краткий обзор: понятие архитектуры, чистая архитектура, MVP, MVVM;
— LifeCycleOwner: что это такое, где он применяется;
— ViewModel: как создавать модель, чем она должна заниматься;
— LiveData: как создавать и обновлять данные, как подписываться на обновления;
— обмен данными между фрагментами через ViewModel.
5 мая, 20:00 — 21:30
Домашние задания: 1
1 Архитектурные компоненты.
1. Переведите свое приложение на архитектурные компоненты и MVVM
2. Обменивайтесь данными между фрагментами используя ViewModel
3. Добавьте отображение ошибок, в случае ошибки сервера или отсутствия интернета
4. Добавьте возможность повторить запрос в случае ошибки
5. * Создайте ViewModel с помощью фабрики

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Хранение данных. Permisisons
после занятия вы узнаете, как и когда запрашивать разрешения у пользователя, научитесь хранить данные пользователя в preferences и в файлах.

Темы:
— SharedPreferences;
— Runtime Permisisons;
— запись и чтение файлов;
— публичные и приватные директории.
8 мая, 20:00 — 21:30
Тема 4: Хранение данных. Room
после занятия вы научитесь создавать и использовать базу данных Room. Сможете менять её без потери данных, а также отслеживать изменения.

Темы:
— создание собственной БД;
— работа с Room БД;
— Room + LiveData;
— миграции и обновление версии БД.
12 мая, 20:00 — 21:30
Домашние задания: 1
1 Хранение данных.
1. Сохраняйте полученные данные фильмов в кэш (базу данных Room)
2. Сохраняйте список избранного в базе данных
3. Во время загрузки фильмов отображайте данные из кэша
4. Храните время последнего запроса данных и, если прошло меньше 20 минут, отображайте кэш, запрос в сеть идти не должен. Для хранения времени используйте SharedPreferences
5*. В случае ошибки сервера \ отсутствия интернета отобразите snackbar с ошибкой и кнопкой "попытаться снова\обновить"
Тема 5: Binding данных
после занятия вы сможете создавать интерфейс, который реагирует на изменения в данных, а также узнаете о различных способах связи кода с вашими xml-файлами разметки.

Темы:
— DataBinding;
— DataBinding + LiveData;
— ButterKnife;
— Kotlin Android Extensions.
15 мая, 20:00 — 21:30
Тема 6: Многопоточность в Android
после занятия вы сможете выполнять задачи приложения асинхронно и в фоновом режиме.

Темы:
— Thread;
— AsyncTask;
— Handler;
— Coroutines.
19 мая, 20:00 — 21:30
Домашние задания: 1
1 Работа с файлами и многопоточность.
1. Добавьте в приложение возможность скачивать постер к фильму
2. Изображение должно скачиваться в публичную директорию
3. * Добавьте отображение прогресса скачивания

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Компоненты Android
Тема 1: Службы (Services)
после занятия вы сможете запускать длительные задачи (такие, как загрузка изображений) в фоновом режиме и продолжать выполнение длительных задач, даже если пользователь свернул приложение.

Темы:
— принцип работы Service;
— Background и foreground service, запрет на сервисы в новых API;
— IntentService;
— Push-уведомления: создание, взаимодействие и управление пушами, использование пушей для Foreground Service;
— PendingIntent.
22 мая, 20:00 — 21:30
Тема 2: Отложенные задачи
после этого занятия вы узнаете, когда и какие средства лучше применять для создания отложенных задач.

Темы:
— WorkManager;
— AlarmManager;
— JobScheduler.
26 мая, 20:00 — 21:30
Домашние задания: 1
1 Отложенные задачи и уведомления.
1. Добавьте в приложение функицонал добавление фильма в список "Посмотреть позже"
2. При добавлении необходимо указывать дату напоминания
3. При наступлении необходимой даты должно появляться пуш уведомление
4. Переход по пуш уведомлению должен открывать детальную страницу фильма
5.* Добавьте в приложение отображение списка "Посмотреть позже", в котором можно будет изменять дату напоминания

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Широковещательные сообщения (Broadcasts)
после занятия вы сможете принимать сообщения от операционной системы (например, о подключении к wi-fi или к розетке), а также передавать сообщения внутри своего приложения.

Темы:
— BroadcastReceiver;
— LocalBroadcastReceiver.
29 мая, 20:00 — 21:30
Тема 4: Обмен данными с другими приложениями
после занятия вы сможете обмениваться данными между приложениями.

Темы:
— принцип работы Content Provider;
— получение списка смс или контактов;
— обмен данными между двумя приложениями: создаём приложение, которое хранит и отдает данные, создаём приложение, которое запрашивает и получает данные у первого приложения.
2 июня, 20:00 — 21:30
Тема 5: Firebase
после занятия вы сможете пользоваться платформой Firebase для отслеживания ошибок приложения, получения уведомлений и создания удалённого конфига приложения.

Темы:
— регистрация приложения;
— Crashlytics;
— RemoteConfig;
— CloudMessaging;
— коротко о других сервисах.
5 июня, 20:00 — 21:30
Домашние задания: 1
1 Сервисы Firebase.
Цель: +1 балл за попытку +1 балл за выполнение основного задания +1 балл за выполнения задания со звездочкой *
Тема 6: Сенсоры и геолокация
после занятия вы научитесь пользоваться различными сенсорами вашего устройства, получать координаты пользователя и работать с Google Maps.

Темы:
— Motion Sensors;
— Position Sensors;
— Environment Sensors;
— геолокация;
— Google Maps.
9 июня, 20:00 — 21:30
Реактивный подход, внедрение зависимостей
Тема 1: RxJava. Часть 1
концепция функционального программирования, Observable, Subscriber, основные операторы. После занятия вы сможете пользоваться самой мощной и популярной библиотекой для асинхронной работы приложения.

Темы:
— основные классы;
— операторы, Cold и Hot Observable;
— операторы создания;
— операторы смены и отмены потоков.
12 июня, 20:00 — 21:30
Тема 2: RxJava. Часть 2
после занятия вы сможете использовать библиотеку RxJava на полную мощность, обрабатывать ошибки и подписываться на изменение объектов и данных.

Темы:
— обработка ошибок;
— Backpressure;
— Subject;
— продвинутые операторы.
16 июня, 20:00 — 21:30
Домашние задания: 1
1 Добавление RxJava в проект.
1. Все запросы к сети переделайте на RxJava
2. Все запросы к БД переделайте на RxJava
3. * Добавьте в приложение поиск по фильмам в БД, используя RxJava

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

Темы:
— введение во внедрение зависимостей: Service Locator, Singleton;
— модули;
— компоненты;
— внедрение зависимостей в приложение: инжектим БД и Retrofit.
19 июня, 20:00 — 21:30
Домашние задания: 1
1 Добавление Dagger2.
1. Все внедрение зависимостей в приложении сделайте с помощью Dagger2
2. Сделайте внедрение зависимостей во ViewModel через Dagger2 и фабрику
Тема 4: Koin
после занятия вы сможете использовать альтернативный DI-фреймоворк для Kotlin — Koin.
23 июня, 20:00 — 21:30
Тестирование и публикация
Тема 1: Тестирование в Android. Unit-тесты
принципы разработки тестируемых приложений, test driven development, Unit-тесты. После занятия вы сможете писать Unit-тесты для своего приложения и понимать основы тестируемых приложений.
26 июня, 20:00 — 21:30
Тема 2: UI-тестирование в Android
после занятия вы сможете писать тесты для вашего интерфейса, используя фреймворк Espresso.
30 июня, 20:00 — 21:30
Домашние задания: 1
1 Покрытие приложения тестами.
1. Добавьте как минимум 5 Unit тестов
2. Добавьте как минимум 3 Интеграционных теста
3. Добавьте UI тест для добавления фильма в избранное
4. Тесты должны использовать JUnit, Mockito, Robolectric, Espresso
5. * Добавьте UI тест для отображения списка фильмов и отображения ошибки в случае отсутствия интернета

P.S. Задание со звездочкой * - повышенной сложности. Если вы с ним не справитесь - ничего страшного, оно не является обязательным.
Тема 3: Публикация приложения
builds, Flavors, Flavor dimensions, Play Store. После занятия вы сможете создавать различные версии своего приложения (например, платную и бесплатную версии), а также понимать, что требуется для публикации приложения в Play Store.

Темы:
— Builds and Flavors, flavor dimensions;
— публикация приложения в Play Store: как распространять приложения, как загружать приложения в маркет. Версии приложения, локализация и другие атрибуты приложения.
3 июля, 20:00 — 21:30
Домашние задания: 1
1 Gradle и публикация.
1. Создайте dev и production типы сборок для вашего приложения. В dev не должны отсылаться данные о крешах, аналитике и т.д., не должны выводиться логи. В production приложение должно подписываться ключом.
2. Добавьте flavors на свое усмотрение. Как вариант, это может быть платное \ бесплатное приложение (например, в бесплатном недоступны фавориты)
3 * Опубликуйте приложение в play store, поделитесь ссылкой с преподавателем
Проектная работа
Тема 1: Консультация по проекту
7 июля, 20:00 — 21:30
Домашние задания: 1
1 Выбор проекта
Тема 2: Консультация по проекту
10 июля, 20:00 — 21:30
Тема 3: Защита проекта
14 июля, 20:00 — 21:30
Выпускной проект
На протяжении всего курса вы будете работать над приложением по поиску фильмов. Приложение будет включать в себя возможность поиска фильма или сериала, сортировки по контенту или ключевому слову. Будет содержать экраны с детальным описанием фильма, историей и любимыми фильмами. Также в приложении будет возможность поделиться с друзьями фильмом и мнением о нем, а также настройка уведомлений о выходе нового фильма или эпизода любимого сериала.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.
Общая стоимость
50 000 ₽
В месяц: 12 500 ₽
В кредит: ₽ в месяц
Продолжительность
5 месяцев
Начало занятий
31 марта
Только в эти выходные!
🔥 ВИСОКОСНАЯ СКИДКА 29% на все курсы! Промокод – Happy_Holydays20