• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2022/2023

Научно-исследовательский семинар "Погружение в iOS-разработку"

Статус: Курс по выбору (Программная инженерия)
Направление: 09.03.04. Программная инженерия
Когда читается: 2-й курс, 1-3 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для всех кампусов НИУ ВШЭ
Язык: русский
Кредиты: 3
Контактные часы: 44

Программа дисциплины

Аннотация

В рамках НИСа слушателям предстоит изучить язык программирования Swift, освоить стандартные компоненты интерфейса и популярные нативные фреймворки, а также приобрести практические навыки создания iOS-приложений в IDE XCode.
Цель освоения дисциплины

Цель освоения дисциплины

  • Ознакомиться с технологиями разработки iOS-приложений и приобрести достаточный набор знаний и навыков для их успешного создания и дальнейшего профессионального развития в этой области.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знакомство с синтаксисом языка Swift
  • Знание основных типов данных и принципов хранения данных в памяти
  • Опыт работы с элементами интерфейса из стандартной библиотеки
  • Опыт создания новых элементов пользовательского интерфейса
  • Знание основ создания экранов мобильного приложения по макетам
  • Умение создавать интерфейс мобильного приложения программным путём
  • Знакомство с хранением данных с помощью User Defaults, Core Data, понимание персистентного слоя
  • Опыт взаимодействия с сетью интернет и сторонними API через URLSession
  • Умение создавать модели для локального хранения и передачи информации
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение. IDE Xcode и структура проекта. Погружение в язык программирования Swift
  • Создание UI-интерфейсов с использованием UIKit в Interface Builder.
  • Проектирование многооконных пользовательских интерфейсов, работа с различными интерфейсными элементами.
  • Работа с UIKit без использования Interface Builder. Работа с интерфейсными элементами и констрейнтами в коде. Создание новых UI-компонентов
  • Локальное хранение данных на устройстве: UserDefaults, CoreData. CRUD-примеры. Реализации нотификаций
  • Определение геолокации пользователя и работа с картами Apple и Yandex на примерах
  • Создание виджетов iOS-приложения
  • Работа с многопоточностью. ARC, MRC, Memory leaks
  • URLSession и Codable. Работа с сетью. Сокеты: концепция, создание iOS-клиентов для взаимодействия с сервером через сокеты
  • Клиент-серверное взаимодействие: архитектурный стиль REST API, создание iOS-клиентов для взаимодействия с сервером
Элементы контроля

Элементы контроля

  • неблокирующий Экзамен (задача)
  • неблокирующий Тест
  • неблокирующий Макет мобильного приложения
  • неблокирующий Проект
  • неблокирующий Домашние задания
  • неблокирующий Доклад 1
  • неблокирующий Доклад 2
Промежуточная аттестация

Промежуточная аттестация

  • 2022/2023 учебный год 3 модуль
    0.05 * Тест + 0.45 * Домашние задания + 0.15 * Проект + 0.05 * Доклад 1 + 0.1 * Макет мобильного приложения + 0.15 * Экзамен (задача) + 0.05 * Доклад 2
Список литературы

Список литературы

Рекомендуемая основная литература

  • Dippery, Michael Professional Swift. – John Wiley & Sons, Incorporated, 2015. – Режим доступа: https://ebookcentral.proquest.com/lib/hselibrary-ebooks/reader.action?docID=4043081
  • iOS. Приемы программирования, Нахавандипур, В., 2015

Рекомендуемая дополнительная литература

  • Программирование для iOS 7 : основы Objective-C, Xcode и Cocoa, Нойбург, М., 2014

Авторы

  • Петрухина Анастасия Сергеевна
  • Александров Дмитрий Владимирович