Введение в SDK iOS

Курс обучает процессу создания и исполнения ваших первых программ для iOS на языке программирования Swift. За три дня теоретических и практических занятий вы изучите основные инструменты разработчика, наиболее часто используемые элементы интерфейса и типичные приемы, необходимые для создания программ для iPhone или iPad.

Детальное объяснение технологий iOS подкрепляется практическим использованием средств разработки Apple и большим набором упражнений по программированию на языке Swift, затрагивающих основные фреймворки iOS.

Для кого предназначен курс
- Разработчики программного обеспечения
- Архитекторы программного обеспечения
- Консультанты по технологиям

Что изучается

- Создание программ на базе iOS SDK
- Использование Xcode и Simulator
- Общие приемы и практики навигации в программах и использования элементов пользовательского интерфейса

Рекомендуемая подготовка

- Просмотреть набор видео по разработке программ на платформе iOS (см. ниже).
- Знать базовые концепции программирования, включая переменные, константы, строки, управление, исполнение, классы. От вас ожидается способность писать код на языке Swift в процессе обучения.
- Прослушать курс “Ведение в Swift” и выполнить все предлагаемые в рамках этого курса упражнения.

Общая структура курса


Введение в Interface Builder Basics


Навигация по Interface Builder, создание базового экрана программы и добавление в него элементов, взаимодействие с ними из программного кода.
Отображение данных
Использование Interface Builder для создания базового экрана приложения, добавление текстовых полей и изображений.

Элементы управления в действии


Использование Interface Builder для добавления кнопок, переключателей и ползунков в сцену. Создание связанных с элементами интерфейса фрагментов кода (actions и outlets), добавление в них базового кода и изучение процесса взаимодействия кода и элементов интерфейса.

Auto Layout и Stack Views


Основы размещения элементов интерфейса при помощи Auto Layout, что позволяет создавать адаптирующиеся под различные устройства интерфейсы пользователя.

Segues и Navigation Controllers


Применение Segues для перехода от одного экрана интерфейса к другому и создание навигационных связей между экранами. Использование элемента Navigation controller для упрощения навигации по связанным сценам или иерархическому контенту.

Tab Bar Controllers


Tab Bar Controller как средство организации навигации по различным блокам информации или различным режимам работы.

Цикл жизни View Controller


Изучение цикла жизни типичного View controller, что позволяет понять потенциал расширения этого важного класса.

Создание простого рабочего приложения


Создание на базе ранее полученных знаний простого рабочего приложения с понятной навигационной иерархией.

Анатомия программы и её цикл жизни


Изучение различных состояний программы на протяжении её цикла жизни и делегирование логики обработки изменения состояния программы.

Model-View-Controller


Организация файлов, структур и классов для создания программы в рамках концепции Model-View-Controller.

Table Views


Базовые приемы работы с табличными данными в программе для iOS.

Настраиваемые Table Views


Настройка элементов Table Views путем создания модифицированных ячеек, динамического добавления и удаления ячеек, использования статических Table Views для показа неизменяющихся данных и предоставления пользователю возможности смахивать ячейки для их удаления.

Сохранение данных


Реализация постоянного хранения данных при помощи NSCoding — протокола сохранения файлов в папку Документы данного приложения.

System View Controllers


Добавление в программу функционала различных System View Controllers для отображения предупреждений, обмена данными, отсылки сообщений и доступа к камере и библиотеке фотографий на устройстве iOS.

Построение сложных экранов ввода данных


Создание приложения, комбинирующего статические и динамические таблицы. Изучение использования элементов управления и отображения данных для удобной работы с различными типами бизнес-информации.

Работа с Web: HTTP и URLSession


Изучение процесса отправления и приема данных через Web, приемов работы с URL и извлечения из полученного набора необходимых вашему приложению данных.

Работа с Web: Декодирование JSON


Как читать и писать блоки данных JSON. Преобразование данных JSON в типы данных Swift и обратно и реализация этого для созданных вами объектов моделей данных.

Работа с Web: Параллельность


Знакомство с реализацией параллельности в iOS. Как гарантировать, что код, изменяющий элементы интерфейса пользователя, исполняется в правильном месте.

Особенности курса


В рамках курса отладка и исполнение программ проводится в среде Simulator, и наличие устройств на базе iOS у студента не требуется. Однако слушателю рекомендуется в рамках домашних заданий самостоятельно освоить процесс загрузки программ в устройства на базе iOS.

Занятия по данному курсу проводится на предоставленных Учебным центром компьютерах Apple Macintosh с необходимым программным обеспечением.

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

Требования к компьютеру:


- Компьютер Apple Macintosh с 8 ГБайт оперативной память минимум и 12 ГБайт свободного пространства на диске

- Настоятельно рекомендуется использование твёрдотельного диска (SSD)

- Желательно размер экрана не менее 15 дюймов

- Установлена операционная система macOS High Sierra или выше

- Установлена система разработки Xcode версии 9.0 или новее

- Установлена программа iBooks для изучения материалов курса

Дополнительные ресурсы

Книга “Intro to App Development with Swift” начальный уровень
https://itunes.apple.com/us/bo...

Книга “App Development with Swift” соответствует стуктуре и сложности данного курса

https://books.apple.com/ru/boo...

Xcode
https://itunes.apple.com/us/ap...

iBooks
https://itunes.apple.com/us/ap...