Лучший бесплатный курс по iOS-программированию — Стэнфордский курс CS193P Весна 2025

Начала перевод этого замечательного курса, который дал старт не одной карьере iOS разработчика.

Курс Стэнфордского университета CS193P (Разработка приложений для iOS с помощью SwiftUI) версии Весна 2025 года уже полностью доступен online.
Все 16 лекций от профессора Пола Хегарти (Paul Hegarty) опубликованы в свободном доступе вместе с учебными материалами.

Основные изменения в версии 2025 года

В отличие от предыдущий версии курса CS193P 2023 года, курс CS193P 2025 года получил значительные обновления в структуре и содержании:

Актуальность Swift и SwiftUI

Курс CS193P 2025 года полностью переработан под актуальные версии Swift и SwiftUI. В отличие от 2023 года, где часть материала уже устарела на момент выхода (например, ObservableObject был заменён @Observable ещё до публикации курса), версия 2025 года изначально построена на современных инструментах и подходах.
Лекции записаны до выхода iOS 26 и Xcode 26, но код остается полностью совместимым с современными инструментами разработки

Демо-приложение / Проект

Наиболее заметное отличие. В 2023 году весь курс строился вокруг Memorize (игра на совпадение карточек) и затем Emoji Art (холст с drag-and-drop). В 2025 году они заменены единственным приложением CodeBreaker(игра в угадывание кода в стиле Wordle/Mastermind), которое разрабатывается с нуля на протяжении всех 16 лекций.

Архитектурная парадигма

В 2023 году курс явно и подробно обучал MVVM (Model-View-ViewModel), посвящая этому целые лекции. В 2025 году акцент смещается на более простое разделение Model + UI (ближе к MVI), что отражает то, как современный SwiftUI с @Observable делает отдельный слой ViewModel менее необходимым.
Лекции теперь уделяют больше внимания созданию интерфейсов, работающих одновременно на iPhone, iPad, и Mac, включая использование NavigationSplitView и работу с Size Classes.

Механизм реактивного UI

В 2023 году курс использовал ObservableObject / @ObservedObject / @Published (старая система на основе Combine). В 2025 году это заменено новым макросом Apple @Observable, введённым в iOS 17 / Xcode 15, который чище и требует меньше шаблонного кода.

Swift Concurrency / Async

В 2023 году Лекция 14 охватывала асинхронное программирование на основе акторов (async/await, акторы). В 2025 году эта тема, по всей видимости, стала менее акцентированной, и курс больше сосредоточен на основах потока данных в Views и функционального программирования.

Пользовательская отрисовка и фигуры

В 2023 году были отдельные лекции по рисованию пользовательских фигур (например, фигура таймера-пирога) и пользовательским ViewModifier. В 2025 году эти темы менее выражены, поскольку CodeBreaker не требует такого же уровня пользовательской графики, как Memorize / Emoji Art.

Жесты и мультитач

В 2023 году жесты мультитач (Drags, Pinches, Taps) подробно рассматривались через Emoji Art. В 2025 году жесты менее рельефны, поскольку CodeBreaker — игра, основанная на нажатиях Taps.

Навигация и мультидокументность

В 2023 году поздние лекции охватывали поддержку нескольких документовDocumentGroup и NavigationView. В 2025 году навигация рассматривается через List + NavigationStack в контексте управления несколькими играми CodeBreaker (Лекции 10–11).

SwiftData

Одно из ключевых добавлений 2025 года — изучение SwiftData, фреймворка Apple для работы с базами данных, представленного в iOS 17. Он пришёл на смену CoreData и предлагает значительно более простой и декларативный способ сохранения данных, хорошо интегрированный с @Observable и SwiftUI. В курсе 2023 года эта тема отсутствовала полностью.

Качество видео

Практическое отличие: лекции 2023 года записаны как захват экрана со звуком (без полноценного видео). Лекции 2025 года — это полноценные видеозаписи, что значительно облегчает восприятие.

Итог: Версия 2025 года — это более современный и streamlined курс, построенный на актуальных идиомах Swift/SwiftUI (@Observable, более чистый поток данных), тогда как версия 2023 года — более глубокое погружение с богатым содержанием по графике/анимации и явным обучением архитектуре MVVM.

Таким образом, курс CS193P 2025 года можно считать не просто обновлённой версией, а фактически новым курсом, отражающим современное состояние экосистемы Apple — от архитектуры и реактивности до постоянного хранения данных с помощью SwiftData.

Где найти материалы

Требования к подготовке

Курс по-прежнему считается продвинутым. Официальное требование Стэнфорда включают уверенные знания в программировании (аналог курсов CS106A/B и CS107). По мнению экспертов с Reddit и LinkedIn, новичкам может быть сложно из-за высокой концентрации сложных концепций, таких как обертка свойства (property wrappers), непрозрачные ТИПы ( opaque types) и concurrency.