- 1 место. Курс «Профессия IOS-разработчик» — Skillbox
- 2 место. Курс «Профессия IOS-разработчик» — GeekBrains
- 3 место.Курс «iOS-разработчик с нуля» — Нетология
- Курс «iOS-разработчик» — SkillFactory
- Курс «iOS Developer» — Otus
- Курс «iOS-разработка для начинающих» — Skillbox
- Курс «iOS Developer. Professional» — Otus
- Курс «Разработка приложений на iOS» — Mail.ru Group
- Курс «Профессия iOS-разработчик» — Moscow Digital Academy
- Курс «iOS разработчик: подготовка по специальности» — Центр компьютерного обучения «Специалист» при МГТУ им.Н.Э.Баумана
- Курс «Программирование на IOS» — Солвери Эдьюкейшн
- Курс «iOS Basics» — ITEA
- Курс «iOS разработчик с нуля» — СвифтЛаб
- Курс «iOS-разработчик» — Академия ШАГ
- Курс «IOS Developer» — itvdn
- Курс «Разработка приложений для iOS» — НОУ ИНТУИТ
- Курс «iOS-разработчик» — Orion Innovation
- Курс «Разработка под iOS. Начинаем» — Разработка
Подборка бесплатных и платных онлайн-курсов по iOS-разработке для начинающих iOS-разработчиков с нуля и продвинутых.
- Командный проект
- Помощь в трудоустройстве
- Статус Apple Developer
- Обучение на практике
iOS-разработчик создаёт приложения для онлайн-банкинга, навигаторы, интернет-магазины, фитнес-трекеры и другие полезные сервисы, которые упрощают людям жизнь.
Кому подойдёт этот курс:
- Новичкам в программировании
Курс позволит вам освоить профессию iOS-разработчика с нуля. Вы напишете первые приложения для портфолио, а после учёбы мы поможем вам с трудоустройством.
- Начинающим разработчикам
Вы получите систематизированные знания, которые необходимы для успешной карьеры iOS-разработчика.
- Программистам, которые хотят сменить специализацию
Ближе познакомитесь со спецификой iOS-разработки, отточите необходимые навыки, найдёте прибыльную и интересную работу.
Программа
39 основных модулей, 300 онлайн-уроков
Вас ждут насыщенная программа, онлайн-лекции и практические задания. На первых двух уровнях вы изучите Swift с самых азов.
- iOS-разработка. Уровень 1
- Среда разработки.
- Основы разработки на Swift. Часть 1. Переменные и числовые типы.
- Основы разработки на Swift. Часть 2. Работа со строками.
- Основы разработки на Swift. Часть 3. Логические типы и управление потоком.
- Основы разработки на Swift. Часть 4. Работа с массивами. Методы.
- Основы разработки на Swift. Часть 5. Работа со словарями.
- Основы разработки UI.
- Классы и структуры в Swift.
- ООП.
- Протоколы.
- Компоновка элементов UI. Использование Enum.
- Работа с макетами.
- Жизненный цикл и навигация.
- Списки.
- Библиотеки. Модификаторы доступа.
- Версионный контроль.
- Многопоточность.
- Сетевые запросы. Часть 1.
- Сетевые запросы. Часть 2.
- Хранение данных пользователей.
- Анимации.
- Современные подходы к разработке.
- Создание навигации в коде.
- Публикация приложения в AppStore.
- iOS-разработчик. Уровень 2
- Дженерики, собственные операторы.
- Архитектура приложения.
- Тестирование.
- Асинхронное программирование.
- Оптимизация и инструменты Xcode.
- Алгоритмы и структуры данных.
- Паттерны проектирования.
- Push-уведомления
- Фреймворки/Модуляризация.
- SwiftUI + Combine.
- Многопоточность.
- Специфичные инструменты.
- Хранение данных.
- Система контроля версий Git
- Версии программного кода.
- Установка Git.
- Индекс и частичные коммиты.
- Сравнение версий.
- Отмена изменений и откат версий.
- Репозитории и коллективная работа.
- Ветки — создание и управление.
- Слияние и разрешение конфликтов.
- Полезные инструменты.
- Правила работы с Git.
- Язык запросов SQL
- Введение.
- Структура БД, запрос DESCRIBE.
- Выбор и фильтрация данных, запрос SELECT.
- Функции и выражения, агрегация данных.
- Отношения и соединение таблиц: JOIN.
- Группировка.
- Модификация данных.
- Подзапросы.
- Объявление и изменение структуры данных.
- Английский для IT-специалистов
- IT Resume and CV: составляем резюме на английском.
- Job interview: questions and answers — проходим собеседование на английском.
- Teamwork: говорим о командной работе и процессах на английском.
- Workplace communication: английский для общения.
- Business letter: ведём переписку на английском.
- Software development: разбираем все этапы жизненного цикла программного обеспечения на английском.
- System concept development and SRS: составляем ТЗ на английском.
- Design: говорим об основных концепциях проектирования.
- Development and Testing: разбираем ключевые термины, которые используются в разработке и тестировании.
- Deployment and Maintenance: обсуждаем типичные действия при развёртывании и дальнейшем сопровождении ПО.
- Карьера и развитие для программиста
- Что нужно работодателю?
- Как создавать резюме и искать работу.
- Как успешно пройти собеседование.
- Как пройти испытательный срок.
- Figma 2.0
- Введение в Figma. Обзор возможностей.
- Работа с графикой.
- Редактор Figma: модульные сетки и монтажные области.
- Создание и настройка компонентов, работа с эффектами.
- Создание вложенных компонентов. Auto Layout.
- Организация рабочего пространства компонентов и стилей. Командная работа, контроль версий и передача макетов в разработку.
- Прототипирование.
- Figma Animate.
- Бонус-модуль. Обзор и применение Figma plugins.
- Ручное тестирование мобильных приложений
- Тестирование мобильных приложений.
- Общее знакомство с темой.
- Ориентация и экраны.
- Эмуляторы и симуляторы.
- Сборка приложений и продвинутые функции Android Studio и XCode.
- GPS и батарея.
- Связь.
- Скриншоты и логи.
- Информация о дипломном проекте.
Дипломные проекты:
- Новостное приложение
- Аналог Яндекс.Go
Диплом Skillbox
Подтвердит, что вы прошли курс, и станет дополнительным аргументом при устройстве на работу.
- ОБУЧЕНИЕ с нуля
- ДЛИТЕЛЬНОСТЬ — 16 месяцев
- ПОРТФОЛИО — 7 проектов
Кому подойдет курс
- Новичкам в разработке
Научитесь программировать и создавать приложения для Apple, даже если у вас нет опыта или технического образования. После второй четверти сможете претендовать на позицию junior-разработчика. - Начинающим iOS-разработчикам
Сможете увеличить заработок и заниматься интересными проектами, а в будущем — вырасти до middle-разработчика. - Разработчикам с опытом
Сможете систематизировать знания в новом направлении и создавать приложения для Apple-устройств.
Программа обучения:
240 часов контента
456 часов практики
2-3 вебинара в неделю
- Разработка приложения на Swift
Вы начнёте создавать приложение на Swift, оптимизируете и спроектируете его интерфейс, реализуете клиент-серверное взаимодействие и хранение данных.
- Видеокурс «Как учиться эффективно»
Расскажем, как спланировать обучение, чтобы сохранить интерес, получить максимум пользы и всё успеть. Вы узнаете, сколько времени уделять обучению, как эффективно выполнять практические задания, отслеживать прогресс и добиваться целей.
- Основы языка Swift
— Введение в программирование
— Синтаксис и основные операторы Swift
— Комплексные типы данных
— Введение в ООП — объектно-ориентированное программирование
— ООП: требование к классам, протоколы, расширения, полиморфизм, композиция
— Продвинутое ООП
— Управление ошибками в приложениях - Пользовательский интерфейс iOS-приложений
— Проектирование интерфейса, часть 1. Разбор основных сетевых возможностей и их применение на практике
— Проектирование интерфейса, часть 2. Добавление экранов. Переходы между экранами. UINavigationController. Segue
— Проектирование интерфейса, часть 3. Отображаем данные в виде таблицы. UITableViewController, UITableViewCell, UICollectionViewController, UICollectionViewCell
— Создание кастомных UI-компонентов
— Кастомизация коллекций
— Анимации, часть 1. Простые анимации UIView. Анимации переходов между UIView. Анимации слоя. Пружинные анимации
— Анимации, часть 2. Группы анимаций. Кривые Безье и их анимирование. 3D-анимации. UIViewPropertyAnimator
— Анимация переходов между экранами - Клиент-серверные iOS-приложения
— Применение паттернов Observer, Singleton и Delegate
— Работа с сетью
— Mapping JSON-данных
— Хранение данных
— Realm — система управления объектной базой данных
— Уведомления в Realm
— Firebase backend
— Механика работы App Store - Производительность iOS-приложений
— Параллельное программирование: thread
— Параллельное программирование: GCD
— Параллельное программирование: NSOperation
— Асинхронный код. Концепции Futures и Promises
— Кеширование и переиспользование данных в памяти устройства
— Практики работы с UITableView и UICollectionView
— Паттерны ленты новостей
— Асинхронное создание изображений
Проект
Создадите аналог мессенджера ВКонтакте: в нём пользователь авторизуется, получает доступ к ленте новостей, управлению группами, друзьям и фотографиям.
- Продвинутый Swift и iOS
Вы научитесь проектировать интерфейс приложения с помощью SwiftUI и UIKit, связывать модели данных, работать с навигацией между экранами и анимацией. Также вы узнаете, как использовать язык Objective-C для Swift-разработки.
- Архитектуры и паттерны на Swift
- Фреймворк SwiftUI
- Objective-C для Swift-разработчиков
Три проекта
- Игра «Крестики-Нолики»
- Клиентское приложение для iTunes
- Приложение-симулятор для бронирования авиабилетов
- Приложение для интернет-магазина на Swift
Расскажем об основных техниках и методиках разработки. Вы научитесь работать с заказчиками: понимать техническое задание, писать тесты, применять непрерывную интеграцию (CI) на примере Fastlane. Также вы реализуете клиентскую и серверную часть приложения и научитесь создавать чистый код.
- Чистый код в iOS
- Работа с современными фреймворками в iOS
Проект
Разработаете клиентскую и серверную часть интернет-магазина. Научите приложение обращаться к базе данных в облаке: отслеживать, фильтровать и выбирать товары, помечать их отсутствие или наличие, добавлять в корзину и даже покупать.
- Командная разработка проекта
Соберёте команду, спланируете разработку проекта, научитесь взаимодействовать с куратором проекта и получите навыки для прохождения собеседования.
- Фреймворк Combine
- Командная разработка на Swift
- Подготовка к собеседованию iOS-разработчика
Два проекта
- Приложение для API сериала Rick & Morty
- Дипломное приложение по вашей идее
Дополнительные курсы от компаний-партнёров
В разработке и проведении обучения участвуют ведущие технологические компании России. Вы узнаете больше о технологиях и инструментах, используемых реальным бизнесом для создания IT-продуктов.
- Framework CoreData
- Интерфейс приложений: работа дизайнеров и программистов
- Реактивное программирование в iOS на примере RxSwift
- Архитектурные паттерны MVVM и VIPER в iOS-разработке
- Аналитика и монетизация мобильных приложений
- Законное индивидуальное предпринимательство и фриланс
Курсы со свободной датой старта
Вы можете формировать часть расписания самостоятельно и регулировать интенсивность обучения.
- Подготовка к поиску работы
- Базовый курс
- Алгоритмы и структуры данных. Базовый курс
Вы получите диплом о профессиональной переподготовке.
На курсе вы научитесь:
- Создавать интерфейс приложения
Работать с анимацией и звуком, воспроизводить видео
- Работать с базой данных и сетью, многопоточностью
Освоите фреймворк CoreData, научитесь получать и обрабатывать данные из сети
- Разрабатывать сложные приложения
С настройкой геолокации, возможностью идентификации пользователя, покупками.
Программа курса:
- Основы Swift
В первом блоке вы познакомитесь с языком программирования Swift с нуля. Начнём с азов: с работы с переменными, типами данных, условными конструкциями. Вы напишете свой первый Hello world и подготовитесь к следующим блокам, посвященным задачам разработки приложений.
На практике вам предстоит создавать первые простые программы на Swift: от вывода текстовых сообщений по условию до создания различных коллекций. Например, данные для игры в шахматы (имя и координаты фигуры) и электронный дневник с данными студентов.
- Особенности iOS-разработки
- Swift Playgrounds
- Переменные, константы, типы данных
- Условные конструкции
- Циклы
- Коллекции: массив, словарь, кортеж и множество.
- Swift: объектно-ориентированное программирование
В этом блоке вы углубитесь в программирование на Swift и познакомитесь с принципами объектно-ориентированного программирования. Вас ждёт изучение понятий класса, функций, наследования и обработка ошибок при исполнении программы.
На практике вы выполните более 20 задач для отработки теории. Например, будете работать над библиотекой аудиотреков, для этого потребуется создать новые классы, объекты и определить методы.
- Основы объектно-ориентированного программирования
- Базовые понятия: класс, объект, методы, свойства, интерфейс
- Функции, замыкания
- Наследование, переопределение
- Протоколы и расширения
- Generic код
- Обработка ошибок
- Git — система контроля версий
За 3 занятия вы научитесь работать с системой Git и с сервисом GitHub, сможете публиковать свои домашние работы и уже в процессе обучения сформируете первое портфолио (работодатели часто просят показать примеры вашего кода на GitHub).
- Предназначение системы контроля версий
- Основные операции (фиксация и откат изменений, поиск, история)
- Работа с сервисом GitHub
- Ветки, слияние веток и разрешение конфликтов
- Командная работа
- Английский язык для начинающих разработчиков
Бонусный модуль от EnglishDom
В этом модуле вас ждут десять видео-лекций, которые помогут вам начать разговаривать на английском языке, как настоящий разработчик.
- Лексика, без которой не обойтись
- Как вести переписку на английском
- Чтение документации и анализ требований
- Программирование
- Тестирование ПО
- Стрессовые ситуации
- Устранение неполадок
- Работа и роли в команде
- Поддерживаем любую беседу на английском
- Собрания, презентации на высшем уровне
- Разработка iOS-приложений — интерфейс пользователя
В этом модуле вы перейдёте к работе над интерфейсом приложения и узнаете, как работать с дизайном. Вы рассмотрите UI и UX-дизайн, навигацию приложения, использование жестов и работу с анимациями.
На практике вы начнете работу над своим итоговым проектом — разработке клиент-приложения для ВКонтакте. В домашних заданиях вы подготовите компоненты, экраны и механизмы переходов между экранами и сценариями будущего приложения, а именно view для отображения аватара и экрана профиля пользователя, ленту новостей, механизм авторизации.
- Дизайн и пользовательский интерфейс
- Apple Human Interface Guidelines
- UI и UX-дизайн
- Interface Builder
- Жесты и анимация
- UIViewController и его жизненный цикл
- Навигация
- Разработка приложения — трекер полезных привычек
Курсовой проект
Вы создадите своё первое мобильное приложение — трекер полезных привычек, в котором будет:
- три экрана, которые используют основные навигационные паттерны iOS — Navigation/Modal
- экран «сегодня», со списком привычек с возможностью отметить выполнение с использованием UITableView и кастомных UITableViewCell
- переход на экран привычки, с историей с момента создания приложения
- переход на модальный экран редактирования привычки с использованием стандартных компонентов iOS — UIDatePicker и UITextFieldOperations.
- Основы графического дизайна
Узнаете о принципах графического дизайна и научитесь работать с композицией, формой и цветом. Попрактикуетесь в создании коллажей, композиций и абстракций, нарисуете логотип для собственного бренда.
Видеокурс включает конспекты, дополнительные материалы для изучения, тесты и задания с самопроверкой.
- Основы композиции
- Теория цвета
- Цифровая эстетика и новые медиа
- Типографика
- Введение в брендинг и современный плакат
- VR
- Основы Photoshop
Познакомитесь с интерфейсом и ключевыми инструментами Adobe Photoshop. Узнаете, как настраивать цвета, работать со слоями, масками и смарт-объектами, растровыми и векторными изображениями.
Видеокурс включает конспекты, дополнительные материалы для изучения и тесты.
- Введение в Photoshop
- Ретушь и цветокоррекция изображения
- Коллаж с двойной экспозицией
- Создание фотоманипуляции
- Создание реалистичного мокапа
- Постер в Photoshop
- Duotone изображения
- Создание сайта в Photoshop
- Gif в Photoshop
- Основы Figma
Познакомитесь с базовыми функциями Figma — программы для создания интерфейсов. Узнаете приёмы для ускорения работы и научитесь создавать интерактивные прототипы.
Видеокурс включает конспекты, дополнительные материалы для изучения и тесты.
- Экскурсия по Figma
- Основные объекты
- Взаимодействие с объектами
- Типографика
- Пространство и сетка
- Дизайнер интерфейса
- Что такое веб
- Собираем лендинг вместе
- Адаптивный дизайн
- Состояния элементов
- Основные элементы приложений
- Рисуем экран продукта банковского приложения
- Введение в компоненты
- Стили
- Рисуем экран продукта банковского приложения с компонентами
- Прототипирование
- Промышленная разработка
В этом блоке вы перейдёте к более профессиональной разработке, а значит, и к более сложным задачам. Вы изучите архитектурные паттерны, познакомитесь с асинхронной разработкой и организацией многопоточности (принцип параллельного выполнения нескольких блоков программы).
На практике вы продолжите работу над итоговым приложением клиента для ВКонтакте: приведете структуру проекта в порядок, структурируете код согласно паттернам, вынесете datasource таблицы в отдельный файл, реализуете отображение медиа в ленте.
- Архитектурные паттерны
- Структура проекта и жизненный цикл приложения
- Работа в фоне
- Менеджеры зависимостей. Cocoapods
- Асинхронная разработка и многопоточность
- Instruments
- Поиск и исправление ошибок приложения. Отладка
- Работа с сетью и хранение данных
Вы познакомитесь с принципами безопасности, кодирования и шифрования, научитесь работать с базами данных и сетью: отправлять запросы на сервер и обрабатывать данные из сети, осуществлять идентификацию пользователя с помощью пароля, технологий Face ID и Touch ID.
Для клиента ВКонтакте вы разработаете:
- загрузку ленты новостей, списка друзей и профиля пользователя;
- хранение настроек приложения в user defaults — какой экран открываем первым при запуске приложения;
- хранения профиля пользователя между запусками приложения;
- безопасное хранение аутентификационных данных;
- вход в приложение по Face ID и Touch ID.
- Разработка приложения для прогноза погоды
Курсовой проект
Вы создадите приложение прогноза погоды, где будет реализовано: поиск по городам, добавление города в избранное, список избранных городов, погода в выбранном городе.
В этом проекте вы сможете использовать изученные механизмы хранения на устройстве и получения данных по сети. - Продвинутая iOS-разработка
В этом модуле коснёмся продвинутых задач разработки перед дипломным проектом. Вы научитесь работе с геолокацией и уведомлениями, узнаете про особенности разработки под разные платформы и публикацию приложений в AppStore.
Для вашего приложения в этом блоке вы доработаете: отображение локации пользователя на карте, тёмную тему и ее смену в зависимости от настроек системы, экран с картой городов, где у вас больше всего друзей, вёрстку экранов и покроете критичный функционал тестами.
- Работа с геолокацией и картами
- Локализация приложения (локализация, Accessibility)
- Light/Dark тема
- SwiftUI
- Особенности разработки приложений под разные платформы и ОС (разработка для iPad, Apple TV, Apple Watch)
- Unit- и UI-тестирование
- Работа с уведомлениями
- Обзор AppStore, информация для публикации приложения.
- Разработка приложения для ВКонтакте
Итоговый проект
Во время обучения вы разработаете клиент для социальной сети ВКонтакте для iPhone и iPad. Этот проект вы будете разрабатывать в течение всего курса во время практических заданий и по завершении курса соберёте его целиком и доработаете продвинутые возможности.
Что будет реализовано:
— Регистрация своего приложения на портале для разработчиков ВКонтакте
— Сценарий авторизации для получения токена
— Лента новостей с переходом к списку комментариев
— Список друзей с переходом в профиль
— Карта с топ-5 городов, откуда у пользователя наибольшее количество друзей
— Профиль пользователя
— Возможность поставить новости «лайк»
- Консультация с HR-специалистом red_mad_robot.
Фундаментальная база
Модель преподавания на онлайн-курсе — как в классических офлайн-вузах уровня МГУ или Гарварда
- Глубокое изучение материала с самых основ
- Развитие самостоятельного системного мышления
- Прямая передача опыта и знаний от экспертов-практиков
- Растущее комьюнити выпускников и нетворкинг
Вы сделаете 5 приложений для портфолио:
- Tо-Do List
Многоэкранное приложение для планирования дел и событий. - Калькулятор
Одноэкранное приложение, в интерфейсе 19 кнопок с разными функциями. - Мини-игра «Кружки»
Игрок перемещает объекты по экрану, они взаимодействуют друг с другом. - Галерея изображений
Коллекция картинок с функциями открытия, увеличения, перелистывания. - Приложение для выбора фильмов
Сервис с поиском и просмотром информации по фильмам и актерам.
Краткая программа курса:
Блок 1 – Программирование — 3,5 мес.
Введение в программирование — Программирование на Swift
Практика:
- 20 часов интерактивных вебинаров
- Тренажер по Swift
- 100 задач на алгоритмы
- 50 написанных программ
Вы научитесь:
- Оперировать основными IT-понятиями
- Разбираться в типах данных и операторах
- Работать в среде разработки Xcode• Писать код на Swift, используя принципы ООП
- Работать с системой контроля версий Git
- Загружать свой код на GitHub
Блок 2 — Мобильная iOS-разработка — 5,5 мес.
Интерфейсы и архитектура мобильных приложений — Работа с данными и их хранение — Многопоточность и работа с сетью
Практика:
- 30 часов интерактивных вебинаров
- 4 практикума по работе с данными
- 4 сквозных проекта
Вы научитесь:
- Работать в Xcode/AppCode
- Разрабатывать интерфейсы и анимацию
- Подключаться к хранилищам данных
- Реализовывать асинхронность в приложении.
Блок 3 — Мобильная разработка PRO — 3 мес.
UI/UX для iOS — Дополнительные фреймворки — Тестирование, сборка и публикация приложения — Введение в Objective-C
Практика:
- 10 часов интерактивных вебинаров
- 5 практикумов по проектированию user friendly интерфейсов
- 1 финальный командный проект
Вы научитесь:
- Прототипировать интерфейс и реализовывать элементы в коде
- Тестировать приложение
- Публиковать приложение в App Store• Использовать синтаксис и основные конструкции Objective-C
- Писать решение на Swift
- Создавать программу и имплементировать решение.
По итогам обучения вы получите сертификат о прохождении курса.
- 2 готовых приложения для портфолио
- Авторская программа
- Помощь с трудоустройством
- Вы сделаете 2 приложения, полностью удовлетворяющие требованиям AppStore
- Тренды современной разработки, перенос на Android, адаптация под разные устройства Apple и другие навыки, которые позволят развиваться как T-shaped мобайл инженер
- Комплексная система, которая поможет получить выгодные офферы в перспективных проектах
Обучение состоит из 2-х ступеней. Вы последовательно пройдете синтаксис Swift, основы программирования, принципы создания приложений и командной разработки
- Ступень 1.
Длительность: 5 месяцев с проектом
Результат: Можно претендовать на стажерские / Junior позиции в разработке
- Сможете создавать iOS-приложения на языке Swift последней версии 5.x
- Освоите основы работы с SwiftUI и Combine
- Сможете покрывать свой код тестами с помощью TDD, работать с сетью на примере API VK
- Будете использовать приложение Instruments, чтобы отрабатывать исключения и сбои, проверять приложение на утечку памяти, наличие долго работающих модулей и т.д.
- Сделаете свое приложение, которое удовлетворяет всем требованиям публикации в AppStore
- Ступень 2.
Длительность: 5 месяцев с проектом
Результат: Middle iOS-разработчик
- Погрузитесь в продвинутые технологии, которые позволят писать лаконичный код и создавать приложения уровня топ в AppStore
- Научитесь решать проблемы многозадачности, работать с протоколами Sequence и Collection и с различными способами хранения данных
- Погрузитесь в нюансы использования Rx: когда он необходим и дает окупаемую выгоду
- Сможете разрабатывать приложения для Apple Watch, Apple TV, а также переносить код на Android, Vulkan/Metal с сохранением 80% логики
Пройдете тестовое собеседование и узнаете, как выбирать работодателя, чтобы развивать свой hard-skills
Программа курса
Программа составляется с учетом требований работодателей и актуализируется перед каждым запуском.
Ступень 1
- Модуль 1. Введение в язык С++
- Модуль 2. Классы и структуры
- Модуль 3. Основы unit-тестирования
- Модуль 4. Стандартная библиотека и полезные алгоритмы
- Модуль 5. Работа со сторонними библиотеками
- Модуль 6: Все глубже и глубже. Тонкости
- Модуль 7: Многопоточность с C++
- Модуль 8: Проектная работа
Ступень 2
- Модуль 1. Современный C++
- Модуль 2. Архитектура
- Модуль 3. Параллельные вычисления
- Модуль 4. Сеть
- Модуль 5. Хранилища
- Модуль 6. ML
- Модуль 7. Проектная работа.
Проектная работа
Каждая ступень завершается финальным проектом, который предстоит защитить перед преподавателем. Практический опыт и портфолио проектов помогут вам произвести впечатление на собеседовании.
- На Ступени 1 вы сможете реализовать свою идею или выбрать приложение из предложенных преподавателем. У вас будут все необходимые навыки, чтобы самостоятельно создать такие приложения как интернет-магазины, банковские приложения, фоторедакторы, всевозможные помощники, приложения для фитнеса и прочие сервисы.
В течение всего курса вы будете работать над большим проектом для своего портфолио — своим собственным приложением. Каждое домашнее задание будет приближать вас к конечной цели — публикации приложения в AppStore.
- На Ступени 2 вы реализуете более сложный проект благодаря полученным знаниям второй «продвинутой» ступени.
Диплом о профессиональной переподготовке:
В конце прохождения специализации вы получите сертификат OTUS и официальный диплом о получении новой специальности.
- Программа адаптирована к требованиям работодателей
- Обучение с нуля
- Проект в портфолио
- Доступ к курсу навсегда
Чему вы научитесь:
- Создавать приложения на iOS
Пройдёте все этапы разработки: от планирования до релиза в App Store. Научитесь работать с сетью, хранилищем данных, анимациями и многопоточностью — ваш первый проект не будет статичным экраном Hello World. - Программировать на Swift
Изучите язык, на котором будете описывать всю логику работы приложений. Шаг за шагом разберётесь с основами и поймёте, как устроен Swift изнутри. Прокачаете логическое мышление — необходимый для программиста навык. - Планировать разработку
Узнаете, как выбрать подходящую архитектуру для приложения, познакомитесь с моделями MVC, MVVM, SOLID и поймёте их особенности. Научитесь ответственно подходить к разработке ПО. - Применять принципы ООП на практике
Организуете код в классы, поймёте основные принципы ООП — наследование, инкапсуляция, полиморфизм. - Работать с UI
Узнаете, как правильно экспортировать цвета, картинки и шрифты из макета в приложение. Найдёте общий язык с дизайнерами и будете понимать их требования. - Контролировать версии в Git
Освоите важный для командной работы навык — будете сохранять и документировать изменения в репозиториях.
Программа:
Вы начнёте с самых основ, а к концу курса напишете полноценное приложение.
24 тематических модуля, 120 онлайн-уроков
- Среда разработки
Среда разработки Xcode — это программа, в которой вы будете писать и тестировать приложения. В этом модуле вы узнаете, как установить Xcode, и создадите первый проект. - Основы Swift-разработки. Часть 1. Переменные и числовые типы
Переменные — это маленькие кирпичики, из которых состоят большие программы. Вы научитесь создавать переменные и присваивать им значения, а также разберётесь, что такое типы и зачем они нужны. - Основы Swift-разработки. Часть 2. Работа со строками
Вы узнаете, как работать с датами, строковыми типами, и познакомитесь с функциями. - Основы Swift-разработки. Часть 3. Логические типы и управление потоком
Научите программы принимать решения и повторять одинаковые действия хоть до бесконечности. - Основы Swift-разработки. Часть 4. Работа с массивами. Методы
В этом модуле вы узнаете, как хранить наборы данных в Swift. А ещё научитесь фильтровать и сортировать такие коллекции и получать доступ к любому из их элементов. - Основы Swift разработки. Часть 5. Работа со словарями
Узнаете, как в Swift хранить данные в формате «ключ-значение». - Основы разработки UI
Напишете небольшое приложение — счётчик нажатий на кнопку. На таком простом, на первый взгляд, проекте вы научитесь связывать графические элементы интерфейса с логикой. - Классы и структуры в Swift
Познакомитесь с ключевой сущностью ООП — классом. Научитесь работать со свойствами экземпляра класса и поймёте, почему они могут быть «ленивыми». - ООП
Продолжите изучать ООП на более глубоком уровне. Узнаете, что означают тайные слова: наследование, полиморфизм и инкапсуляция. - Протоколы
Протоколы напоминают классы, но это не одно и тоже. Про них и поговорим. - Компоновка элементов UI. (Использование Enum)
Узнаете, как выравнивать элементы интерфейса, и напишете свой калькулятор. - Работа с макетами
Научитесь экспортировать из графического макета картинки, шрифты и цвета, чтобы интерфейс приложения был похож на задумку UI-дизайнера. А ещё добавите локализуемые строки, чтобы ваши будущие проекты могли перевести на другие языки. - Жизненный цикл и навигация
Станете более осмысленно подходить к разработке приложений. Узнаете, какие процессы происходят под капотом у приложения во время его работы. - Списки
Познакомитесь с классами UITableView и UITableViewCell, с помощью которых у вас получится создавать таблицы. Вы сможете выбирать, редактировать и удалять каждую ячейку. Как в Экселе. - Библиотеки. (Модификаторы доступа)
Разработчики любят библиотеки — готовые программные модули, которые можно подключить в проект. Вы добавите в проект библиотеку Alamofire и научитесь делать сетевые запросы. - Версионный контроль
До этого модуля вы нигде не фиксировали изменения в программном коде. Пора это исправить. Для этого вы научитесь работать с инструментом git. - Многопоточность
Чтобы приложение не зависало каждый раз, когда подгружает данные, неплохо бы сделать процесс загрузки фоновым. Этим и займёмся в модуле: вы научитесь писать асинхронные запросы, узнаете, что такое GCD и приоритет очередей. - Сетевые запросы. Часть 1
По косточкам разберёте, как устроены сетевые запросы, чем GET отличается от POST, познакомитесь с моделью REST и форматом JSON. - Сетевые запросы. Часть 2
Узнаете, как отправлять данные при помощи POST-запросов. - Хранение данных пользователей
Научитесь сохранять и получать данные из хранилищ UserDefaults и CoreData. - Анимации
Узнаете, как оживить свои приложения с помощью анимации. - Современные подходы к разработке
Научитесь структурировать код по паттернам MVVM, MVC. Узнаете, что такое SOLID и почему важно соблюдать code style. - Создание навигации в коде
Добавите в приложение несколько экранов и сделаете переход между ними с помощью паттерна роутер. - Публикация приложения в AppStore
Перед размещением в App Store Apple ревьюит все приложения — проверяет производительность, надёжность и соответствие гайдлайнам. В этом модуле вы научитесь готовиться к App Review и работать с TestFlight.
Дипломный проект
- Новостное приложение
Вы разработаете приложение с новостями о космической отрасли. Проект состоит из нескольких экранов: новости, блог, избранное. Материалы подгружаются через публичный API, а любимые заметки можно сохранить на устройстве и читать без подключения к интернету.
Диплом Skillbox
Подтвердит, что вы прошли курс, и станет дополнительным аргументом при устройстве на работу.
Для кого:
Программа создана специально для iOS Developers с опытом работы в сфере разработки мобильных iOS-приложений от 1 года и более.
Особенности программы
- Обучение построено исключительно на кейсах из практики разработки приложений в production. Мы будем решать сложные и хардкорные задачи с уровнем качества топовых приложений:
- разработаем комплексный и анимированный UI, используя SwiftUI и знания, которые не найти в статьях в интернете;
- научимся адаптировать UI код для iPadOS и переносить на watchOS, tvOS, macOS платформы;
- изучим вопрос смешения декларативной и императивной парадигм, Rx паттерны и разработку на Combine.
- выстроим архитектуру под конкретное приложение: MVVM+S, Clean Swift(VIP) или SOA;
- научимся редкому навыку комфортного для iOS разработчиков переноса приложения на Android с сохранением 80-90% логики. Использованию кодогенерации, способу развивать себя как T-shaped мобайл инженера.
Программа курса:
Модуль 1 — SwiftUI и основы Combine
- Тема 1. Проектируем UI декларативно с SwiftUI. В чем отличия UIKit и SwiftUI
- Тема SwiftUI List, List с кастомным лейаутом, Hosting ViewControllers
- Тема 3. Использование NavigationView, TabView. Создание собственного стека Навигации
- Тема 4. Отображение структурированных данных, List, пейджинг, кастомные компоненты на UIViewRepresentable
- Тема Создание кастомных Shape, SwiftUI Drawing and Animation API
Модуль 2 — Современная архитектура мобильных приложений
- Тема 6. Необычная система типов Swift, структуры данных, Generics
- Тема 7. Связывание разных частей приложения Observing, Signals, Callbacks. PATs (Protocol with Associated Types)
- Тема 8. Protocol Oriented Programming (POP), SOA, модуляризация, архитектурные Rx паттерны: Flux/Redux
- Тема 9. MVx, VIP, анализ архитектурных паттернов. SOLID, GRASP, Coupling/Cohesion принципы.
Модуль 3 — Foundation без сторонних фреймвоков и Swift 5 Standard Library
- Тема 10. Sequences и коллекции, асимптотический анализ: O(1), O(N), O(N*log(N)), O(n^2)
- Тема 11. Использование всей мощи String: StringInterpolation, Expressible. Региональные форматы.
- Тема 12. Ассоциативные типы, Type Erasure, «сахарные» типы данных, диспетчеризация вызовов в Swift 5
- Тема 13. Компилятор LLVM, AST, создание собственных операторов
Модуль 4 — Многозадачность
- Тема 14. Проблемы многозадачности и способы их решения, GCD
- Тема 15. Внутренности GCD(libdispatch), OperationQueue
- Тема 16. RunLoop & POSIX Threads, Инструменты синхронизации, Lock, Mutex
Модуль 5 — Networking и хранение данных
- Тема 17. Новый Network-фреймвок, URLSession, Codable
- Тема 18. Socket.io, WebSocket и другие сокеты для чатов и мгновенных обновлений
- Тема 19. SQLite, способы кеширования, Files, Сравнение CoreData и Realm
- Тема 20. Безопасность: OAuth 2.0, Keychain и обфускация API ключей, SSL Pinning
Модуль 6 — Создание приложений для Apple Watch, TV, Mac
- Тема 21. watchOS
- Тема 22. tvOS
- Тема 23. Кросс-платформенный код для iOS/iPadOS, watchOS, macOS, tvOS
Модуль 7 — CoreML и Vision, нейронные сети и машинное обучение
- Тема 24. CoreML, CreateML, TensorFlow использование обученных моделей нейронных сетей
- Тема 25. CoreML: получение моделей с помощью AutoML Vision и использование их на устройстве
Модуль 8 — Мультиплатформенная разработка: перенос на Android, Vulkan/Metal
- Тема 26. Мультиплатформа для Rich Media: Metal и Vulkan, разработки игр, Video/Image процессинг
- Тема 27. Jetpack Compose
- Тема 28. Одновременная реализация фич на iOS + Android. Необходимый tool-set
Модуль 9 — Организация разработки
- Тема 29. Тестирование кода XCTest, UITest, fastlane и CI
- Тема 30. Git-flow, TBD, автоматизизация workflow
- Тема 31. Как правильно написать резюме и развивать hard-skills
Модуль 10 — Проектная работа
- Тема 32. Написание приложения с нуля
- Тема 33. Консультация по проектам и домашним заданиям
- Тема 34. Защита проектных работ.
Выпускной проект
На основе умений и знаний полученных в курсе студент выбирает какой проект будет реализовывать. С нашей стороны будет помощь и наставничество в реализации проекта. Также нами будет предложен экспертный список «Чего не хватает в AppStore» из небольших и средних программ, где вы бы могли себя проявить.
Программа курса:
- Основы языка 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
Единственный курс в России, где вы получите сертификат от Apple
Во время обучения, каждый студент сможет пройти тестирование от Apple и получить Swift Certificate — документ, который подтвердит ваши навыки разработки на Swift и Xcode.
Программа курса:
1 неделя — Введение в разработку приложений
Темы:
- Введение в Swift и Playgrounds
- Константы, переменные и типы данных
- Операторы
- Управляющая логика программы
- Xcode
- Компиляция, запуск и отладка приложения
- Основы Interface Builder
- Д/З. Пошаговый проект «Фонарик»
2 неделя — Знакомство с UIKit
Темы:
- Строки
- Функции
- Структуры
- Классы и наследование
- Циклы
- Отображение данных
- Управляющие элементы в действии
- Авторасположение элементов интерфейса и стековое представлениеПошаговый проект Apple Pie – UIKit
3 неделя — Навигация по интерфейсу и рабочие циклы
Темы:
- Опциональные значения
- Приведение типов и их контроль
- Оператор guard
- Области видимости
- Перечисления
- Переходы и контроллеры навигации по интерфейсу
- Контроллеры панелей вкладок
- Жизненный цикл контроллера
- Пошаговый проект Personality Quiz
Сертификат станет дополнительным аргументом при устройстве на работу. Работодатель сможет проверить сертификат и убедиться, что вы действительно окончили курс успешно.
Сегодня кажется, что iOS была всегда.
Но на самом деле она появилась только в январе 2007 года. А до этого внутри Apple две команды разработчиков бились друг с другом.
Почему именно iOS?
Средняя заплата среднего iOS разработчика выше заработка его коллеги, работающего на Android. 150к в месяц считается невысоким результатом. Так что деньги на покупку Apple у вас будут.
Скорее всего, вам придётся кодить на языке Swift. Он довольно прост в освоении и лоялен к ошибкам, то есть работает, даже когда вы немного накосячили. Впрочем, права на ошибку у вас не будет.
У Apple требовательная аудитория. За свои деньги она хочет продукт высокого качества. Просто так зарплата вам на Мальдивы не прилетит. Зато реально трудиться на фрилансе, кодить на Бали или другом тёплом острове.
iOS разработчик востребован. Осталось им стать.
iOS разработчик от «Специалиста»
Мы 29 лет на рынке, то есть в 2,5 раза дольше iOS. Умеем привлекать нужных преподавателей. Знаем, что теория мало стоит без практики. Особенно в разработке. Мы научим не только делать приложения для iPhone, владеть XCode, проектировать интерфейсы на Storyboards в Interface Builder. Уже во время обучения вы сами создадите приложение, которое не стыдно будет выложить на AppStore. Возможно, оно сделает вас миллионером. И работать вовсе не придётся.
Менторы по программированию на iOS:
- Ексей Пантелеев
«Программирую под iOS с 2010 года. Использую Swift с 2014 года. Сделал и выпустил в App Store полноценное приложение на SwiftUI. Принял участие более чем в десяти крупных и сложных проектах в ведущих IT-компаниях страны (игры, мессенджеры, финтех и офисные приложения), таких как «Тинькофф Банк», Мail.ru, «Новые Облачные Технологии». Преподаю iOS/Swift 6 лет. Выступаю на iOS-митапах.»
- Мобильная разработка
- Unit Tests
- iOS
- Swift
- Swagger
- Алексей Зыков
– 15 лет в программировании, два высших технических, работал в крупных компаниях на больших проектах.
– Веду мобильные проекты iOS и Android от идеи до App Store.
– Умею делать бэкенды, и связывать мобильные приложения с устройствами по Bluetooth.
– Интересуюсь дополненной реальностью и искусственным интеллектом.
- Мобильная разработка
- Android
- Kotlin
- AR
- Бэкенд
- Computer Vision
- iOS
- Swift
- In App Purchases
- Андрей Рычков
«Занимаюсь разработкой под iOS больше 8 лет. За это время успел поработать в 8 разных компаниях над большим количеством разнообразных приложений. Больше всего люблю делать сложные интерактивные анимации и высокопроизводительный интерфейс.»
- iOS
- Swift
- Александр Сычев
— 10 лет пишу приложения под iOS, отлично владею Objective-C и Swift.
— 5 лет руковожу командами мобильной разработки.
— 3 года преподаю в iOS-школе Сбера.
— 1,5 года учусь на MBA в СберУниверситете.
- UI
- UX
- Мобильная разработка
- Figma
- Clean Architecture
- MVP
- Firebase
- REST API
- Module architecture
- Mobile first
- UI kit
- Управление командой
- Kanban
- Scrum
- TDD
- Автоматизация тестирования
- Прохождение собеседований
- Gitflow
- CI/CD
- Паттерны проектирования
- GitlabCI
- Unit Tests
- iOS
- Swift
- Xcode
- Swagger
- Postman
- Мотивация команды
- In App Purchases
- Push Notifications
- Publishing Apps
- OOP
- Управление продуктом
- Мотивация Сотрудников
- Кастдев
- Agile
- Rostislav Maslov
15 лет занимаюсь IT.
В 2013 основал IT лабораторию UnitBean, где занимался IT консалтингом и заказной разработкой мобильных приложений.
С 2020 года CTO в FoodTech Lab(дочерняя компания Федеральных сетей Сушивесла & Блинбери)
Выпускник Московской Школы Управления Сколково в программе StartUp Академия.
- React
- UI
- Java
- Бэкенд
- Microservices
- Управление командой
- Spring Boot
- Scrum
- iOS
- Управление продуктом
- Agile
- Управление проектным офисом
- Управление портфелем проектов
- CEO
- CTO
- Алексей Гладков
Head of Mobile — Leroy Merlin
— 7 лет в мобильной разработке
— Автор канала о мобильной разработке Mobile Developer
— Самостоятельно прошел путь от Junior до Head of Mobile
— Преподаю мобильную разработку в школе LoftSchool
— Занимаюсь кроссплатформенной разработкой на Kotlin
- Мобильная разработка
- Android
- Kotlin
- iOS
- Андрей Чичерин
«Больше 8 лет занимаюсь iOS разработкой, Objective-C и Swift.
Руковожу командой iOS разработчиков.
Последние 3.5 года делаю погодное приложение для кайтеров, сёрферов и яхтсменов, с OpenGL и Metal.
Больше всего люблю правильно разложить задачу и сделать красивое расширяемое решение.»
- Redux
- Мобильная разработка
- MVP
- Анимация
- Mobile first
- Перфоманс и скорость загрузки
- iOS
- Swift
- Xcode
- Распределённая команда
- Viper
- MVVM
- Георгий Сабанов
«Занимаюсь iOS разработкой более 7 лет. Успел поработать на фрилансе, в своем стартапе, в аутсорсе и в нескольких продуктовых компаниях.»
- Мобильная разработка
- Управление командой
- iOS
- Swift
- Илья Пасюк
«Более 9 лет в веб-разработке. Спроектированил и разработал 8+ SPA-кабинетов для комерческого использования. 2 приложения в AppStore и GooglePlay. Интересными задачами отмечу миграцию AngularJS кабинетов на React, внедрение интернацианализации, создание общей дизайн системы для более чем 10 веб-кабинетов.»
- HTML
- CSS
- JavaScript
- SVG
- Less
- Sass
- Webpack
- React
- AngularJs
- Js
- Redux
- Bootstrap
- js
- TypeScript
- UI
- Мобильная разработка
- SASS
- Figma
- Git
- Браузеры
- MVP
- Firebase
- REST API
- Google Services
- A11y
- UI kit
- Docker
- CD
- CI
- Gatsby
- Jade
- Flutter
- Dart
- js
- Scrum
- SPA
- Верстка
- Анимации CSS
- iOS
- Xcode
- Postman
- GitHub
- Agile
- Фронтенд
- Екатерина Батеева
«Больше 2-х лет занимаюсь разработкой iOS приложений. До этого 7 лет занималась всем видами автотестирования.
Работала на крупных проектах компаний: «Тинькофф банк», «Райффайзен банк», «МТС», «Luxoft»
Преподаю около 3х лет на различных платформах iOS разработку и тестирование.»
- Мобильная разработка
- Тестирование
- Управление командой
- Автоматизация тестирования
- Тест-кейсы
- Процессы разработки и тестирования
- Прохождение собеседований
- iOS
- Swift
- Xcode
- Функциональное тестирование.
- Григорий Бернгардт
«Последние 8 специализируюсь на разработке, преимущественно, под платформу iOS.
Успел поработать на фрилансе, в стартапах и заказной разработке, работал разработчиком, тимлидом, сейчас отвечаю за iOS разработку в студии Surf.
Организовывал и проводил школы мобильной разработки и мастер-классы для студентов старших курсов, занимался наймом и подготовкой разработчиков к собеседованиям в другие компании, выстраивал систему роста внутри компании.
В свободное время занимаюсь разработкой своих проектов.
Помимо iOS увлекаюсь анализом и визуализацией данных, разработкой веб-сервисов и чат-ботов и продуктовой разработкой.
Если у тебя есть какая-то нетривиальная задача, хочется с чем-то разобраться подробнее, выстроить план развития или решить еще какие-либо вопросы по разработке, то готов помочь :)»
- Мобильная разработка
- Git
- MVP
- REST API
- Software Engineering
- CI/CD
- iOS
- Swift
- Xcode
- Push Notifications
- Visualization
- Software Architecture
- Иван Волков
Управляю разработкой мобильных приложений на протяжении 5 лет, специализируюсь на разработке под iOS на языке Swift. Могу оценить реальные сроки и стоимость разработки сервиса. Также нравится изучать тенденции в дизайне интерфейсов и в удобстве их использования.
- Мобильная разработка
- Управление командой
- iOS
- Swift
- Xcode.
Для кого этот курс:
- Ты — новичок и хочешь освоить престижную и востребованную профессию разработчика, в которой можно расти и развиваться
- Ты — самоучка и ищешь надежные курсы iOS-разработки с нуля, чтобы систематизировать знания;
- Ты — IT-специалист, который хочет попробовать себя в мобильной разработке.
Твой план обучения на базовом курсе iOS разработки:
- Общие сведения и настройки для разработки
- Введение. Документация Apple
- Среда разработки Xcode. Настройка симуляторов устройств
- Создание проекта
- Общие приемы объектно-ориентированного программирования (ООП)
- Шаблоны проектирования
- Обобщение и параметризация
- Изучение языка Swift
- Основные сведения о языке. Синтаксис
- Операторы
- Строки и символы
- Коллекции
- Управленческие структуры
- ООП в Swift
- Свойства и методы
- Наследование и инкапсуляция
- Жизненный цикл объектов
- Механизмы управления памятью
- Протоколы, расширения
- Работа с ресурсами
- Строки, локализация
- Изображения
- Работа с коллекциями
- Наборы (Set)
- Массивы (Array)
- Словари (Dictionary)
- Поток
- Потоки Thread
- Очереди Queues
- Библиотека Grand Central Dispatch (GCD)
- Подробная работа с графикой в Interface Builder
- Xib-файлы
- Storyboard
- Основы работы с системой контроля версий
- Контроллеры и переходы между ними (Segue)
Для кого этот курс?
- Новичкам
Курс отлично подойдет для тех, кто совершенно незнаком даже с базовыми понятиями программирования, но хотел бы начать развиваться в программировании и хотят получить перспективную профессию iOS-разработчика.. Задания построены от простого к сложному, поэтому новичкам будет просто разобраться во всех нюансах языка.
- Начинающим программистам
Тем, кто уже умеет писать простейшие коды, но не хочет останавливаться на достигнутом. Курс от Свифт Лаб построен на изучении, прежде всего, практики. Преподаватель доступно и понятно расскажет базовые основы языка и его синтаксиса, научит выстраивать алгоритм управления большим количеством переменных.
Программа курса:
- Введение в мобильную разработку
В 1-м уроке мы познакомимся со средой разработки Xcode, инструментами, которыми располагает Xcode и, чтобы лучше понять функционирование Interface Builder, сделаем небольшое приложение.
Список тем урока:
- Знакомство с Xcode и Interface Builder
- Элементы интерфейса приложения
- Горячие клавиши
- Проектирование приложения
- Мое первое приложение
- Автоматическое размещение и Stack View
Во 2-м уроке вы узнаете основы построения макета приложения. Под макетом приложения мы подразумеваем расположение элементов пользовательского интерфейса. Так же посмотрим какие присутствуют инструменты в Interface Builder для работы с макетом. В настоящий момент существует достаточно много устройств с различным разрешением экрана. Приложения должны корректно отображать информацию на всех видах устройств. Поэтому ни одно приложение не обходится без механизмов автоматической компоновки макета интерфейса. Именно созданием интерфейса и расположением элементов на экране мы и займемся на уроке.
Список тем урока:
- Инструменты для разработки макета пользовательского интерфейса в Interface Builder
- Маска автомасштабирования Autoresizing – простой инструмент для примитивных приложений
- Stack View
- Приоритеты Content Hugging и Compression Resistance.
- Ограничения
Ограничения это простое правило, которое определяет взаимоотношения между элементами пользовательского интерфейса. Основное предназначение ограничений это вычислить положение элемента по осям X и Y, а также ширину и высоту. В этом уроке мы рассмотрим как создавать ограничения в Interface Builder и программно. А также познакомимся с адаптивным макетом, который будет менять состав элементов в зависимости от разрешения устройства.
Список тем урока:
- Ограничения
- Поиск проблемы
- Приоритеты ограничений
- Привязки
- Классы размеров
- PickerView
4 урок мы начнем с разбора жизненного цикла приложения. Узнаем из каких стадий состоит цикл, разберем важнейший шаблон «делегирование», без которого не обходится ни одно приложение. И по окончанию модуля сделаем небольшое развлекательное приложение.
Список тем урока:
- Жизненный цикл iOS приложения
- Жизненный цикл View Controller
- Модель MVC
- Делегирование и источник данных
- UIImageView
- Сохранение пользовательской информации
- Table View Controller. Часть 1.
Конечно же мы не могли оставить без внимание табличное представление. 5 урок будет посвящен приложениям, в которых данные отображаются в табличном виде. Примеры тому приложения: Контакты, Список дел, Мессенджеры. Вы и сами можете привести множество примеров. Мы научимся работать с таблицей, передавать данные на другой экран для редактирования и сохранения. И в конце сделаем сохранение данных, чтобы после перезапуска приложения все сохранялось.
Список тем урока:
- Контролер и элемент TableView
- Протоколы Delegate и DataSource
- Добавление и удаление данных из TableView
- Table View Controller. Часть 2.
Продолжение темы начатой нами в пятом уроке. Мы научимся работать с таблицей, передавать данные на другой экран для редактирования и сохранения. И в конце сделаем сохранение данных, чтобы после перезапуска приложения все сохранялось.
Список тем урока:
- Работа с сигвеями (Segues)
- Текстовые поля
- Передача данных
- Сохранение данных
- Распознавание жестов
Иногда возникает необходимость обрабатывать жесты на тех, элементах управления, на которых они не предусмотрены стандартной библиотекой UIKit. Или же вам понадобилось сделать свой пользовательский жест. В этом модуле мы разберем механизм распознания жестов и вы научитесь делать свои жесты.
Список уроков:
- Виды контроллеров
- Механизм распознания жестов
- Панаромирование
- Щипки (pinching gesture)
- Вращение
- Доступ к свойствам через Interface Builder
В 8 уроке вы узнаете как можно пользовательские свойства выносить на панель свойств в Interface Builder, а также какие есть возможности для компиляции кода без запуска программы, чтобы увидеть реализацию дизайна прямо в режиме разработки.
- Атрибуты @IBInspectable и @IBDesignable
- Инициализация представлений для отображения в Interface Builder
- Scroll View. Часть 1.
Пожалуй не существует ни одного приложения без скроллинга. В 9 и 10 уроках мы рассмотрим возможность создания собственного скроллинга, а также познакомимся с основами элемента ScrollView.
- Разница между frames и bounds
- Как работает Scroll View
- Как работает Zoom
- Вложенный Scroll View
- Добавление поля для клавиатуры
- Scroll View. Часть 2.
Пожалуй не существует ни одного приложения без скроллинга. В 9 и 10 уроках мы рассмотрим возможность создания собственного скроллинга, а также познакомимся с основами элемента ScrollView.
- Разница между frames и bounds
- Как работает Scroll View
- Как работает Zoom
- Вложенный Scroll View
- Добавление поля для клавиатуры
- Работа с оборудованием. Часть 1.
iPhone оснащен множеством различных устройств, таких как камера, датчики движения, Face ID. И всем этим можно воспользоваться, написав всего лишь несколько строчек кода. В 11-12 уроках мы на практике разберем как пользоваться этими устройствами на реальном iPhone.
- Сенсоры
- Работа с камерой и передача фотогрфий в другие приложения
- Работа с живой камерой
- Использование Touch ID и Связки ключей
- Работа с оборудованием. Часть 2.
iPhone оснащен множеством различных устройств, таких как камера, датчики движения, Face ID. И всем этим можно воспользоваться, написав всего лишь несколько строчек кода. В 11-12 уроках мы на практике разберем как пользоваться этими устройствами на реальном iPhone.
- Сенсоры
- Работа с камерой и передача фотогрфий в другие приложения
- Работа с живой камерой
- Использование Touch ID и Связки ключей
- Дополнения к приложению
В этом уроке мы рассмотрим еще несколько актуальных инструментов, которые часто используются в приложениях. К ним относятся локальные уведомления, работа с картой, гео-локацией и локализация приложений.
- Локальные уведомления
- MapKit и Core Location
- Локализация приложений
- Работа с сетью
Зачастую в приложении необходимо подгружать интернет-ресурсы. С одной стороны сложного ничего нет в работе с сетью, но также и есть нюансы. В 10-м модуле мы реализуем GET и POST запрос, а также познакомимся со сторонней библиотекой Alamofire.
- Grand Central Dispatch
- Networking with URLSession
- Библиотека Alamofire и Cocoapods (менеджер зависимостей)
- Анимация.
Всем очень нравятся красивые приложения. Мы даже не замечаем, что именно нас привлекает. Привлекают мелкие детали, небольшие анимации элементов, то, что не бросается в глаза, но производит впечатление. В 11-м модуле мы хорошо поработаем с различными видами анимации, после чего, вы сможете делать свои собственные красивые эффекты.
Список тем:
- Анимация с помощью CALayer и его наследников
- Анимация CAShapeLayer
- Анимация ограничений
- Анимация множителя
- Анимация «пружинкой»
- Переходы UIView
- Анимируемые свойства
- Анимация кейфреймов
Базы данных.
В 17, 18, 19, 20 уроках мы познакомимся с 2-мя видами баз данных. С облачной базой данных и на локальном устройстве. Такие приложения как мессенджеры, доставка еды, такси, все они используют облачные базы данных, т.к. в них уже реализовано все необходимое для поддержки таких приложений. Если же вам необходимо хранить массив данных на локальном устройстве, вам обязательно понадобится CoreData.
Список тем:
- Firebase
- Core Data
- Firebase
- Core Data
- Apple Watch.
21-22 урок знакомит вас с разработкой приложений под Apple Watch. Программирование под них ни чуть не сложнее разработки приложений под iPhone. Мы разберем основные концепции и принципы работы и передачи данных между iPhone и Apple Watch. Сделаем небольшое приложение, которое будет нам показывать прогноз погоды и обмениваться информацией с iPhone.
Список тем:
- Макеты в Apple Watch
- Поля и промежутки
- Таблицы
- Конфигурирование ячеек таблицы
- Меню
- Навигация
- Рисование с помощью Core Graphics
- Обмен данными
- Apple Watch
21-22 урок знакомит вас с разработкой приложений под Apple Watch. Программирование под них ни чуть не сложнее разработки приложений под iPhone. Мы разберем основные концепции и принципы работы и передачи данных между iPhone и Apple Watch. Сделаем небольшое приложение, которое будет нам показывать прогноз погоды и обмениваться информацией с iPhone.
Список тем:
- Макеты в Apple Watch
- Поля и промежутки
- Таблицы
- Конфигурирование ячеек таблицы
- Меню
- Навигация
- Рисование с помощью Core Graphics
- Обмен данными.
Программа обучения
В основе программы лежат реальные требования IT-рынка.
Наши методисты и преподаватели постоянно работают над её улучшением и обновлением, чтобы выпускники Академии ШАГ могли достойно показать себя перед работодателем.
- Основы использования Mac OS;
- Введение в iOS и язык программирования Swift;
- Переменные, типы данных, операторы;
- Логические операторы, операторы ветвлений. Циклы;
- Массивы одномерные, многомерные, строки;
- Указатели, динамическое выделение памяти;
- Функции. Структуры;
- Побитовые операторы, работа с файлами;
- Объектно-ориентированное программирование;
- Использование файловой системы средствами Swift;
- Многопоточность;
- Generics и Коллекции;
- Паттерны проектирования. MVC, MVP, MVVM. Принципы проектирования классов SOLID;
- Структура iOS-проекта. Пользовательский интерфейс приложения;
- Storyboards;
- Обработка жестов пользователя. Контроллеры представлений и сложные элементы управления;
- Grand Central Dispatch, обзор элементов управления iOS;
- Core Graphics. Core Image. Core Animation. Core Data. Core Motion. Core Location, работа с картами;
- Введение в работу с базами данных. Использование баз данных в iOS-приложениях;
- Календари, события, звонки, sms;
- Аудио, видео, камера;
- Сетевые возможности, доступ к веб-сервисам;
- Регистрация в App Store;
- Модульное тестирование;
- Работа в команде, управление программными проектами. Системы управления версиями GIT;
По окончании курса вы сможете
- Владеть навыками программирования на языке Swift;
- Разбираться в архитектуре iOS. Уметь создавать, компилировать, и отлаживать проекты в среде Xcode;
- Разбираться в реализации ООП в Swift;
- Использовать различные элементы управления в зависимости от поставленной задачи;
- Создавать приложения, реагирующие на жесты;
- Разбираться в механизмах графического вывода и работы с изображениями. Уметь использовать мультимедиа возможности в рамках создаваемого приложения;
- Взаимодействовать с источниками данных;
- Создавать приложения, взаимодействующие с адресной книгой и календарем;
- Владеть механизмами интеграции с такими веб-сервисами, как Facebook и Twitter. Использовать картографические возможности;
- Синхронизировать данные приложения с iCloud;
- Уметь пользоваться системой контроля версий. Применять паттерны проектирования. Использовать юнит-тестирование;
- Использовать принципы командного взаимодействия. Понимать принципы и особенности регистрации приложения в App Store;
Программа:
- Видео курсы по специальности IOS DEVELOPER
- Swift Стартовый
- How to Swift Стартовый
- Swift Базовый
- How to Swift Базовый
- Swift Углубленный
- Методологии управления проектами. Вступление в SCRUM
- Основы работы с Git
- Записи бесплатных вебинаров
- Как стать IOS разработчиком?
- Создание Weather Application с помощью Swift
- Подводные камни в разработке мобильных игр под Android и iOS
- React Native лучшие практики
- Как стать Full-Stack разработчиком?
- Flutter в веб-разработке и создании мобильных приложений для Android и iOS
- Адаптивная верстка в iOS приложениях с использованием Storyboard.
Что вы получите:
- План обучения
Пользуйтесь Планировщиком обучения для составления индивидуального плана обучения, выберите только нужные курсы и темы. - Смотрите видео уроки
Смотрите видео уроки, пользуйтесь временными метками для быстрого перехода к теме.
- Учебные материалы
Скачайте исходники программного кода, опорный конспект и презентации к урокам и работайте с ними.
- Выполняйте задания
Закрепляйте полученные знания, выполняя домашние задания после каждого урока.
- Проверка знаний
Проходите онлайн тестирование после каждого урока и после всего курса.
- Общение с ментором
Общайтесь с ментором, получайте помощь и поддержку в решении сложных задач.
- Практикум навыков
Формируйте навыки написания кода, используя Практикум.
- Форум
Общайтесь с другими студентами, тренерами, единомышленниками на форуме ITVDN.
- Вебинары
Участвуйте в бесплатных образовательных вебинарах по программированию, задавайте Ваши вопросы в прямом эфире.
- Сертификат
Пройдите тестирование и получите сертификат, подтверждающий Ваши знания.
- Диплом по специальности
Для получения диплома нужно изучить все обязательные технологии по выбранной специальности и сдать финальный экзамен.
- Бонусы
Получайте бонусы за использование ресурсов ITVDN и обменивайте их на подарки и скидки.
План занятий
Глава 1 — Создание первого приложения
- Лекция 1 — Оглавление
- Лекция 2 — Перспективы разработки мобильных приложений
- Лекция 3 — Особенности мобильной разработки
- Лекция 4 — Устройства и версии iOS
- Лекция 5 — Среда разработки xCode. Hackintosh и виртуальные
- Лекция 6 — Objective-C
- Лекция 7 — Первая программа «Hello, World!»
- Лекция 8 — Объектно-ориентированное программирование
- Лекция 9 — Наследование, инкапсуляция, полиморфизм
- Лекция 10 — Шаблоны MVC
- Тест 1 — 11 заданий
Глава 2 — Язык Objective-C
- Лекция 11 — Основы языка Objective-C. Типы данных
- Лекция 12 — Объекты
- Лекция 13 — Вызов методов
- Лекция 14 — Статические методы
- Лекция 15 — Создание объектов
- Лекция 16 — nill
- Лекция 17 — Строки
- Лекция 18 — Списки и словари
- Лекция 19 — Числа и NSObject
- Лекция 20 — Пишем программу
- Лекция 21 — Тип id
- Лекция 22 — Классы
- Лекция 23 — Заголовочные файлы и файлы реализации
- Лекция 24 — h и User.m
- Лекция 25 — Пример создания программы
- Лекция 26 — Свойства. Домашнее задание
- Тест 2 — 11 заданий
Глава 3 — Views
- Лекция 27 — Протоколы
- Лекция 28 — Модификаторы на свойствах
- Лекция 29 — Язык C
- Лекция 30 — Интерфейс
- Лекция 31 — UIView
- Лекция 32 — Как отображать View
- Лекция 33 — Пример в xCode
- Лекция 34 — UIViewController
- Лекция 35 — UILabel
- Лекция 36 — События
- Лекция 37 — Демонстрация
- Тест 3 — 11 заданий
Глава 4 — Controllers
- Лекция 38 — UINavigationController
- Лекция 39 — UITabBarController
- Лекция 40 — Modal Controller
- Лекция 41 — UIPopoverController
- Лекция 42 — UISplitViewController
- Лекция 43 — UIPageViewController
- Лекция 44 — Демонстрация «Погода»
- Лекция 45 — Продолжение демонстрации
- Тест 4 — 10 заданий
Глава 5 — Сложные views
- Лекция 46 — UITableView
- Лекция 47 — UIScrollView
- Лекция 48 — UIWebView
- Лекция 49 — MKMapView
- Лекция 50 — Демонстрация
- Тест 5 — 11 заданий
Глава 6 — Storyboards, interface builder
- Лекция 51 — Interface Builder
- Лекция 52 — Демонстрация
- Лекция 53 — Продолжение демонстрации
- Тест 6 — 10 заданий
Глава 7 — Internet
- Лекция 54 — Блоки
- Лекция 55 — Потоки
- Лекция 56 — Загрузка данных
- Лекция 57 — JSON
- Лекция 58 — JSON в Dropbox
- Лекция 59 — Демонстрация
- Лекция 60 — CocoaPods
- Лекция 61 — Общение с сервером
- Лекция 62 — Библиотека AFNetworking
- Лекция 63 — Пример работы с AFNetworking
- Тест 7 — 10 заданий
Глава 8 — Работа с данными
- Лекция 64 — Работа с файлами
- Лекция 65 — NSFileManager
- Лекция 66 — Сохранение в файл и чтение из файла
- Лекция 67 — NSUserDefaults
- Лекция 68 — NSCoding
- Лекция 69 — Сохранение и считывание произвольных объектов
- Лекция 70 — Пример
- Лекция 71 — База данных sqlite и библиотека Core Data
- Лекция 72 — Аналог схемы БД, информация о типе БД и месте хранения данных
- Лекция 73 — Вставка, загрузка и удаление объектов
- Лекция 74 — Многопоточность в Core Data
- Лекция 75 — Демонстрация работы с Core Data
- Тест 8 — 10 заданий
Глава 9 — Анимации и другие интерфейсные тонкости
- Лекция 76 — Анимация
- Лекция 77 — Пример
- Лекция 78 — Изменение интерфейса
- Лекция 79 — Работа с дизайнером
- Лекция 80 — Демонстрация работы с Core Data
- Тест 9 — 10 заданий
Глава 10 — iPad
- Лекция 81 — Разработка для iPad
- Лекция 82 — Демонстрация
- Лекция 83 — Автоматические изменения размера
- Лекция 84 — Изменение размеров
- Лекция 85 — Повороты экрана
- Тест 10 — 10 заданий
Глава 11 — Multimedia
- Лекция 86 — Акселерометр, гироскоп
- Лекция 87 — Геолокация, координаты
- Лекция 88 — Аудио
- Лекция 89 — Видео, фото
- Лекция 90 — Демонстрация
- Лекция 91 — Уведомления
- Лекция 92 — Демонстрация уведомлений
- Лекция 93 — Распознавание жестов
- Лекция 94 — Демонстрация работы с жестами
- Тест 11 — 10 заданий
Глава 12 — Публикация приложения в App Store
- Лекция 95 — Лицензия разработчика
- Лекция 96 — apple.com
- Лекция 97 — Публикация для тестировщиков TestFlight
- Лекция 98 — Публикация в AppStore
- Лекция 99 — iTunes Connect
- Лекция 100 — Crashlitics
- Лекция 101 — App Annie, AppBot
- Лекция 102 — Flurry
- Лекция 103 — Монетизация, покупки, реклама
- Лекция 104 — Продвижение, измерение эффективности
- Лекция 105 — Локализация
- Лекция 106 — Картинки
- Лекция 107 — Работа с социальными сетями
- Лекция 108 — iCloud
- Тест 12 — 10 заданий
- Экзамен.
Для кого этот курс
— для начинающих iOS-разработчиков уровня Junior+ и Middle с опытом работы в сфере разработки мобильных приложений,
— для опытных разработчиков на любом высокоуровневом языке программирования от 1 года и более, желающих переобучиться на iOS-разработчика.
Описание программы
Продвинутый курс по iOS-разработке нацелен на развитие навыков до уровня Middle iOS Developer. На курсе научим проектированию сложных UX-компонентов, оптимизации их производительности, разработке клиент-серверных приложений. Курс включает большое количество практических заданий в среде разработки Xcode, максимально приближенных к задачам в реальных проектах.
Вы научитесь
Создавать сложные пользовательские интерфейсы, освоите iOS-разработку на Swift, работать с REST API и сетевыми запросами, делать приложение отзывчивым с помощью многопоточности, разрабатывать сложные многомодульные приложения с возможностью добавления нового функционала, поработаете с множеством различных фреймворков от Apple.
Этот курс — возможность получить мощные знания по iOS-разработке для развития профессиональных навыков уровня Middle iOS Developer и трудоустроиться в крупную международную компанию Центр разработки Orion Innovation (ранее MERA)!
— Зарубежные заказчики
— Большие и сложные продукты
— Возможности горизонтального и вертикального роста
— Современные процессы разработки
— 1000+ единомышленников
— Современная офисная инфраструктура
— Корпоративная программа ДМС
— и многое другое
Главное преимущество программы
БЕСПЛАТНОЕ обучение с гарантией трудоустройства!
Принятие решения о зачислении на курс, а также обсуждение возможных особых предложений и условий осуществляется по результатам собеседования.
Содержание курса
- Синтаксис Swift
- ООП: Наследование, классы, протоколы
- Создание пользовательского интерфейса: UIKit, SwiftUI
- Списки: UITableView, UICollectionView
- Работа с сетью: REST API, NSURLSession, Alamofire
- Управление памятью
- Многопоточность: GCD, OperationQueue
- Паттерны проектирования
- Базы данных: Core Data
- Введение в популярные фреймворки
- Система контроля версий и их типы. Принципы работы Git
- Работа в команде, Peer Review. GUI клиенты для работы с Git
- Методология проектов. Что такое проект и какие проекты бывают в компании Orion Innovation
- Методология проектов. Основные стадии проекта и процессы
- Методология проектов. Методологии разработки ПО.
Здесь мы сохранили видео онлайн-курса «Разработка под iOS. Начинаем». Курс проходил на платформе Stepik.
В рамках курса затронуты темы:
— язык программирования Swift;
— базовые инструменты Apple для разработчиков;
— как создать интерфейсные элементы приложения и связать их с кодом.
001. Денис Малых «О языке Swift»
002. Денис Малых «Инструменты для разработки на Swift»
003. Денис Малых «Базовые конструкции языка»
004. Денис Малых «Функции»
005. Денис Малых «Optionals»
006. Денис Малых «Объектно-ориентированное программирование»
007. Денис Малых «Управление памятью»
008. Денис Малых «Структуры»
009. Денис Малых «ENUM’ы»
010. Денис Малых «Generics»
011. Денис Малых «Протокол-ориентированное программирование»
012. Денис Малых «Массивы и Словари»
013. Денис Малых «Функционально-ориентированное программирование»
014. Денис Малых «Функциональные функции стандартной библиотеки»
015. Денис Малых «Switch и сопоставление с образцом (pattern matching)»
016. Денис Малых «Соглашение по именованию и переименованию»
017. Денис Малых «Полезные классы стандартной библиотеки»
018. Ольга Выростко «Базовое представление об архитектуре»
019. Ольга Выростко «Среда разработки»
020. Ольга Выростко «Что есть в Xcode?»
021. Ольга Выростко «Пишем первый код, исправляем ошибки»
022. Ольга Выростко «Структура проекта, настройка схемы и таргета»
023. Ольга Выростко «Профилирование»
024. Ольга Выростко «Сторонние библиотеки»
025. Станислав Сидельников «Представления (UIView)»
026. Станислав Сидельников «Autolayout»
027. Станислав Сидельников «IBAction и установка таймера»
028. Станислав Сидельников «Таймер»
029. Станислав Сидельников «Перемещение фигуры. Autolayout constant»
030. Станислав Сидельников «TapGestureRecognizer»
031. Станислав Сидельников «Рисуем поле с помощью drawRect»
032. Станислав Сидельников «Загрузка view из Nib/Xib, часть 1»
033. Станислав Сидельников «Загрузка view из Nib/Xib, часть 2»
034. Станислав Сидельников «Manual Layout»
035. Андрей Соловей «Что такое UIViewController»
036. Андрей Соловей «Перемещение между контроллерами»
037. Андрей Соловей «Жизненный цикл класса UIViewController»
038. Андрей Соловей «Шаблон MVC»
039. Андрей Соловей «MVC на примере приложения адресной книги»
040. Андрей Соловей «Что такое UINavigationController»
041. Андрей Соловей «UINavigationController на практике»
042. Андрей Соловей «Другие полезные свойства UINavigationController»
043. Андрей Соловей «Что такое UITabBarController»
044. Андрей Соловей «UITabBarController на практике»
045. Андрей Соловей «Другие полезные контейнеры»
046. Андрей Соловей «Теория о Storyboard»
047. Андрей Соловей «Storyboard на практике»
048. Андрей Соловей «Теория о UIScrollView»
049. Андрей Соловей «Как настроить UIScrollView»
050. Андрей Соловей «Работа с протоколом UIScrollViewDelegate»
051. Андрей Соловей «Дополнительные возможности UIScrollView»
052. Андрей Соловей «Принципы работы с классом UITableView»
053. Андрей Соловей «UITableView на практике»
054. Андрей Соловей «Как работать с ячейками таблицы»
055. Андрей Соловей «Другие важные особенности UITableView, часть 1»
056. Андрей Соловей «Другие важные особенности UITableView, часть 2»
057. Андрей Соловей «Собственные контейнер-контроллеры»
058. Андрей Соловей «Контейнер-контроллеры на практике»