Basic Android development

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

месяцев

Что даст вам этот курс
7
0
Курс для программистов с опытом работы от года на любом высокоуровневом языке.

Курс научит:

  • Создавать приложения для телефонов/планшетов с операционной системой Android;

  • Использовать все компоненты платформы в своей работе (Activity/Fragment, Service, BroadcastReceiver, ContentProvider);

  • Использовать основные библиотеки Android-платформы (Dagger 2, RxJava 2, Retrofit, Glide);

  • Использовать архитектурные компоненты Android от разработчиков Google;

  • Пользоваться Gradle-файлами для версионирования.


Обучение идет 3 месяца, 4 месяц посвящен работе над проектом. В качестве домашнего задания дается разработка приложения по поиску фильмов.

Минимальные требования при поступлении:

  • Понимание ООП;

  • Умение работать со строками, файлами и коллекциями;

  • Понимание интерфейсов и дженериков;

  • Умение работать с исключениями;

  • Понимание логгирования в консоли и инструментов дебаггинга приложения;

  • Умение работать с системой контроля версий Git.


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

Вам предстоит посмотреть 12 видео-лекций, общей длительностью 26 академических часов. Вы изучите следующие темы:
- Базовые синтаксические конструкции и операторы в Java
- Ссылочные типы данных и обработка ошибок
- Работа с массивами и строками
- Объектно-ориентированное программирование в Java
- Unit-тестирование
- Устройство платформы Java
- Сборка и упаковка Java-приложения
- Классы-контейнеры
- Исключения
- Работа с файлами.
Оценить модуль
4
0
Консультация с преподавателем
На этом занятии вы разберете все вопросы, которые возникли в процессе изучения подготовительного видео-курса по Java.
Оценить занятие
0
0
Базовый Android
Оценить модуль
2
0
Знакомимся с Android Studio
● Запуск проекта, установка и работа с эмулятором.
● Структура проекта
● Знакомство с Gradle
● Шорткаты и отладка в Android Studio
● Работа с Git в Android Studio
Оценить занятие
0
0
Главный компонент Android - Activity
● Жизненный цикл Activity
● Способы сохранения состояния Activity: onSaveInstanceState, Singleton
● Переходы между Activity
● Activity stack и flags
● StartActivityForResult
Оценить занятие
0
0
Интерфейс экрана. Часть 1
● View: обзор контейнеров и разных элементов интерфейса.
● Создание интерфейса в xml и коде.
● Menu.
● Navigation Drawer.
Оценить занятие
0
0
Интерфейс экрана. Часть 2
● Принципы Material Design
● CardView
● TextInputLayout
● CoordinatorLayout
● ConstraintLayout
● Пример простой анимации
Оценить занятие
1
0
Интерфейс экрана. Часть 3
● SnackBar
● AppBar, ActionBar и ToolBar
● Стили и темы приложения
● Ресурсы
● Квалификаторы ресурсов
● Векторная графика
Оценить занятие
1
0
Fragments
● Подробный разбор Fragment-ов: жизненный цикл, добавление и удаление фрагментов с помощью FragmentManager
● Back Stack для Fragment-ов
● Взаимодействие Activity и Fragment
● RetainFragment
Оценить занятие
1
0
Списки
● RecyclerView:LayoutManager, Adapter и ViewHolder
● Добавление и удаление элементов списка
● ItemDecorator
Оценить занятие
1
0
Выходим в интернет
● OkHttp
● Retrofit
● Gson
● Glide
Оценить занятие
1
0
Продвинутый Android
Оценить модуль
2
0
Полезные инструменты
● Позиционирование и GoogleMaps API
● Permissions: обработка разрешений от пользователя
● Способы сохранения информации: file и SharedPreferences
Оценить занятие
0
0
Компоненты Android. Часть 1
● Принцип работы Service
● IntentService
● Binder
Оценить занятие
0
0
Компоненты Android. Часть 2
● Принцип работы Content Provider
● SQLite: ContentResolver, Cursor, SQLiteHelper
Оценить занятие
0
0
Компоненты Android. Часть 3
● BroadcastReceiver
● LocalBroadcastReceiver
● Push-уведомления и PendingIntent
Оценить занятие
0
0
Многопоточность в Android
● Thread и AsyncTask
● Handler и HandlerThread
● Timer, AlarmManager
● JobScheduler
Оценить занятие
0
0
Тестирование в Android
●Test Driven Development
● Юнит-тесты
Оценить занятие
0
0
Тестирование для Android: Mockito
Публикация приложения
● Builds and Flavors
● Публикация приложения в Play Store:
- как распространять приложения.
- как загружать приложения в маркет.
- версии приложения, локализация и другие атрибуты приложения
Оценить занятие
0
0
Архитектурные компоненты. Реактивный подход. Внедрение зависимостей
Оценить модуль
1
0
Архитектурные компоненты. Часть 1
● ViewModel
● LiveData
● LifeCycleOwner
Оценить занятие
0
0
Архитектурные компоненты. Часть 2
● Room
● DataBinding
Оценить занятие
0
0
Архитектурные компоненты. Часть 3
WorkManager и асинхронная работа приложения
Оценить занятие
0
0
RxJava. Часть 1
● Основные классы
● Операторы, Cold и Hot Observable
Оценить занятие
1
0
RxJava. Часть 2
● Обработка ошибок
● Многопоточность
● Backpressure
● RxBinding
Оценить занятие
1
0
Dagger 2. Часть 1
● Модули
● Компоненты
● Внедрение зависимостей
Оценить занятие
0
0
Dagger 2. Часть 2
Scopes
Оценить занятие
0
0
Тестирование
● Тестируем Rx
● Тестируем Dagger
Оценить занятие
0
0
Проектная работа
Оценить модуль
1
0
Консультация по проекту
Консультация по проекту
Защита проектов
Опрос по программе "Basic Android development"

При запуске нового курса, нам очень важно оценивать качество и актуальность предлагаемой программы на этапе идеи и концепции модулей, поэтому мы будем очень рады и благодарны вашим ответам, экспертным оценкам и комментариям.

Вопрос №1 из 6
Ваше имя и фамилия
Вопрос №2 из 6
Выберите один вариант ответа
Владеете ли вы каким-либо языком программирования:
Вопрос №3 из 6
Выберите один вариант ответа
Является ли этот курс интересным лично для вас?
оцените от 1 (совсем не интересно) до 5 (круто, интересно, я бы пошел)
Вопрос №4 из 6
Выберите один вариант ответа
Как вы оцениваете актуальность такой программы?
оцените от 1 (категорически устарела) до 5 (современная или даже на хайпе)
Вопрос №5 из 6
Какие дополнительные темы хотели бы изучать в рамках этого курса?
Вопрос №6 из 6
Комментарии и предложения - мы всегда им рады!

Оставьте хотя бы один ответ для участия в опросе