Разработка приложений на iOS

Научись разрабатывать приложения на iOS и начни карьеру в ИТ
15 занятий
Хочу учиться
Что дает курс

  • Ты создашь собственное приложение с нуля и опубликуешь его в App Store.
  • Научишься поддерживать и расширять функциональность приложения.
  • Получишь навыки работы в команде и полноценный проект в портфолио.
  • Научишься работать с Git.
  • Познакомишься с крутыми IT-специалистами: преподавателями и другими студентами.
  • Студенты, которые успешно проходят курс, получают рекомендацию для прохождения стажировки в VK.

Какие знания нужны

  • Навыки программирования на одном из высокоуровневых языков (С/C++, C#, Java, Obj-C, Swift, Python, Kotlin).
  • Базовые знания языка Swift.
  • Непреодолимое желание научиться разрабатывать приложения под iOS.

Как проходят занятия

Онлайн-занятия проходят вечером, 1-2 раза в неделю. Если эпидемиологическая обстановка позволит, то часть мероприятий (хакатоны, мастер-классы) пройдут в офлайне. 

Как поступить?

Регистрация
До 6 сентября до 23:59 — зарегистрируйся и подай заявку на курс
Тестирование
7 сентября в 18:00 тебе на почту придет ссылка на тест. Пройди его до 10 сентября 18:00
Зачисление
До 17 сентября — письмо о зачислении придет тебе на почту
Начало обучения
Обучение начнется на неделе с 20 сентября согласно расписанию

Программа курса

Основы языка Swift
  • Модель памяти в Swift
  • Классы vs структуры
  • Замыкания и блоки
  • Протоколы
  • Расширения
  • Потоковая обработка коллекций
Проектирование UI iOS-приложений
  • Базовые элементы UIKit
  • Основы создания интерфейса в Storyboard
  • Верстка кодом, PinLayout, FlexLayout, layout systems
  • Responder chain
  • Распознавание жестов
  • UITableView, UICollectionView
  • Кастомные анимации
  • CALayer, CAShapeLayer, CAAnimation, UIView animations, hitTest
Performance iOS-приложения
  • Многопоточность
  • Параллельность
  • Grand Central Dispatch
  • Operation
  • Кэширование данных
  • CoreData Stack
  • UserDefaults
Сетевое взаимодействие
  • Отправка сетевых запросов (URLSession)
  • Многопоточность в сетевом взаимодействии
  • Firebase Auth
  • Работа с Firestore
  • Хранение файлов в Firebase Storage
  • Парсинг данных (JSON)
  • Показ веб-страниц
  • Codable
Архитектура и паттерны на Swift
  • Паттерны проектирования
  • Singleton, Delegate, Observer, etc.
  • Принципы SOLID, KISS, DRY
  • Архитектуры MVC, MVP, MVVM, VIPER
  • Применение паттернов на практике
SwiftUI
  • Основы SwiftUI
  • Основы Combine
  • Основные UI-компоненты в SwiftUI
  • Binding и реактивное взаимодействие в SwiftUI

Преподаватели

Артур Сардарян
Артур
Сардарян

Руководитель кроссфункциональной команды разработки в «Юле». Закончил «Технопарк» в МГТУ им. Н. Э. Баумана.

Андрей Бабков
Андрей
Бабков

Программист в продуктовой команде «Юлы». Закончил «Технопарк» в МГТУ им. Н. Э. Баумана. На старте занимался frontend разработкой небольших проектов, затем пришел в Mail.ru Group.

Павел Тихонов
Павел
Тихонов

Руководитель команды мобильной разработки в «Юле». Выпускник МИЭМ им. А. Н. Тихонова. В iOS-разработке c 2012. Видел мир до AutoLayout и ARC.

Павел Носов
Павел
Носов

Руководитель кроссплатформенной команды разработки в VK. Последние 9 лет занимается мобильной разработкой, преимущественно под iOS, успев поработать в лидирующих ИТ-компаниях.

Константин Кулаков
Константин
Кулаков

Программист в продуктовой команде «Юлы». Закончил «Технопарк» в МГТУ им. Н. Э. Баумана. Занимался backend разработкой, после чего пришел в мобильную разработку под iOS.

Вопросы по обучению

Отборочный тест
Тест на логику и базовые знания Swift. Материалы для подготовки ищи в письме после подачи заявки.
Кто может учиться?

Студенты старших курсов и магистратуры любых вузов и факультетов Москвы и Санкт-Петербурга, у которых есть компьютер на macOS.

Какая нагрузка в неделю?

От 4 ак. часов в неделю без учета времени на выполнение домашнего задания.

Моего вопроса тут нет :(

Другие вопросы можно посмотреть здесь.