Профессия iOS-разработчик. Уровень 1
Введение в iOS-разработку: переменные и константы
Управление потоком данных: условия, циклы
Функции и опшиналы
Классы, структуры, перечисления
Объектно-ориентированное программирование
xcode.Controller и сториборд
Переходы и взаимодействие экранов
Стандартные UI компоненты и работа с ними
Autolayout, Constrains, StakViews
Таблицы и коллекции
Создание собственных UI-компонентов
Взаимодействие с сервером, парсинг json. Стандартные средства и библиотеки
Анимация от А до Я
Хранение данных: Realm, CoreData, UserDefaults, контроль версий
Функциональное программирование
Подпись и отправка приложений в App Store. Обзор iTunes connect
Профессия iOS-разработчик. Уровень 2
Расширения и протоколы
Дженерики, собственные операторы
Rх: что это, обзор Rх-библиотек, работа с ними
Архитектуры приложений: MVC, MVVM, Viper, Amber
Асинхронное программирование
Оптимизация и инструменты Xcode
Алгоритмы и структуры данных
Взаимодействие с Objective С и С-кодом. Секретные фишки из Objective C
Интеграция с социальными сетями (fb, vk)
Maps: Apple, Google, Yandex
Agile и командная разработка
Vision, CoreML и нейронные сети: создаём скайнет
AVFoundation: редактируем видео
ARKit: играем с дополненной реальностью
GPUImage: профессиональная обработка фотографий
SpriteKit: изучаем игровой движок от Apple
Паттерны проектирования
Тестирование
Push-уведомления
Профессия Android-разработчик. Уровень 1
Введение в Android-разработку
Сборка и ресурсы
Основы Kotlin: синтаксис, условия, функции, циклы
Основы Kotlin: ООП, классы и объекты
Основы Kotlin: функции высшего порядка, исключения и аннотации
Вёрстка приложения и представление данных
Вёрстка с помощью ConstraintLayout
C64 Добавление новых экранов с помощью Activity
Фрагменты
Списки
Разрешения
Управление датой и временем
Многопоточность
Работа с интернет-соединением
Обмен данными по сети. Библиотека Retrofit
Работа с файлами
Работа с изображениями
Компонент ContentProvider
Язык запросов SQL
Базы данных: основы
Базы данных в Android
Оповещения (push-уведомления)
Выполнение задач в фоне, сервисы
Дизайн-концепция Material design
Основы внедрения зависимостей
Основные паттерны построения приложения
RxJava: основы
RxJava: операторы
RxJava: утечка памяти, обработка ошибок
Подготовка приложения к релизу
Профессия Android-разработчик. Уровень 2
Создание собственных View и анимации
Списки: продвинутый уровень
Корутины в Kotlin
Выполнение задач в фоновом режиме: практика
Продвинутое внедрение зависимостей (dependency injection). Dagger 2
Паттерны построения приложения
Паттерны презентационного слоя
RxJava: продвинутый уровень
CI/CD: непрерывная интеграция и доставка
Утечки памяти: продвинутый уровень
Статические анализаторы кода