Контрольная — Final Exam
Финальная работа проверяет не память на syntax, а способность самостоятельно превратить идею в модель, state flow и доступный интерфейс. Возвращаться к Day 1–19 и проектам можно и нужно.
Часть 1: контрольная Projects 13–19
Выбери небольшое приложение, в котором есть:
- импорт или создание пользовательских данных;
- локальное persistence;
- navigation между списком и detail;
- search/filter/sort;
- хотя бы один gesture или animation;
- accessibility labels и альтернативы жестам;
- adaptive layout для узкой и широкой ширины.
Подходящие идеи: каталог мест, карточки для учёбы, коллекция фотографий или список мероприятий.
Часть 2: план до Xcode
Запиши models и их relationships, источник истины каждого изменяемого значения, список экранов и возможные ошибки. Только после этого создавай Xcode project.
Часть 3: критерии проверки
- приложение запускается с чистыми данными;
- данные переживают перезапуск;
- пустое, loading и error состояния понятны;
- основные действия доступны VoiceOver;
- крупный Dynamic Type не обрезает критический текст;
- код разбит по ответственности, а не по случайному размеру файла;
- ошибки не скрыты пустыми
catch. - чистая бизнес-логика покрыта Swift Testing, включая один failure или cancellation case;
- permissions запрашиваются в контексте, а недоступные API имеют fallback;
- пользовательские строки вынесены в String Catalog, а README фиксирует deployment target, data flow и известные ограничения.
Самостоятельная работа
Испытание
Задание
Собери выбранное приложение без пошагового tutorial. Веди короткий журнал решений: проблема → выбранная модель → проверка.Что уже нужно знать
Весь маршрут Swift → SwiftUI. Используй карту курса для точечного повторения.Показать подсказку 1
Начни с одного вертикального slice: model, один экран, одно изменение и сохранение. Потом расширяй.
Показать подсказку 2
Если застрял, найди не готовый экран, а конкретную концепцию: Binding, navigation, Codable, SwiftData или layout.
Показать решение
Единственного решения нет. Готовый результат — работающее приложение, которое проходит критерии выше и которое ты можешь объяснить своими словами.
Курс завершён
Ты не сменил Swift на новый язык. Ты последовательно научился использовать Swift для моделей, поведения, состояния, интерфейса, данных и системных возможностей Apple platforms.
Комментарии
Вопросы, находки и подсказки по этой странице.
Войди, чтобы задать вопрос или помочь другим.