Раздел 1. Основы программирования на языке Java.
Типы данных и операции. Условные конструкции. Итеративные конструкции. Многомерные массивы.
Раздел 2. Введение в объектно-ориентированное программирование.
Понятие класса и объекта. Дизайн мышление.Работа с экземплярами класса. Строки. Основы тестирования и отладки. Управление проектами. Scrum. Знакомство с Android разработкой. Интерфейс Android приложения.
Раздел 3. Основы программирования Android приложений.
ООП проектирование. Ввод-вывод в Java. Исключения. Внутренние и анонимные классы. Параллелизм и синхронизация. Сервисы в Android. Фрагменты (Fragments). Сенсоры. Двумерная графика. Разработка игровых приложений.
Раздел 4. Алгоритмы и структуры данных.
Массив, как базовая структура данных. Алгоритм двоичного поиска. Список, как базовая структура данных: стеки, очереди, односвязные и двусвязные списки. Адаптеры в Андроид. Базы данных. Локальная СУБД на примере SQLite. Рекурсия. Дерево, как базовая структура данных. Ассоциативные массивы. Контент-провайдеры в Android.
Раздел 5. Основы разработки серверной части мобильных приложений.
IP-сети. Web сервер. HTTP запросы и ответы. Клиент-серверная архитектура мобильных приложений. Облачные платформы. REST взаимодействие. Серверные СУБД. Дизайн программного обеспечения и приложений MaterialDesign
Раздел 6. Проектная деятельность.