Curriculum
Five tracks, interleaved rather than sequential. A lesson unlocks once its prerequisites have been read — the order below is one valid path through the graph, not the only one.
Values, types, optionals, control flow, functions and closures — the vocabulary every later lesson assumes.
Structs, classes, enums, protocols and generics. Swift rewards you for encoding rules in the type system; this unit is where that starts.
Throwing functions, ARC, retain cycles, and why value semantics changes how you reason about a program.
Property wrappers, result builders, macros, opaque and existential types — the machinery SwiftUI is built from.
Suspension, tasks, task groups, cancellation. How concurrent code stops being callback soup.
Actor isolation, Sendable, @MainActor, and the Swift 6 rules that turn data races into compile errors.
The view protocol, the layout system, stacks, frames, and how SwiftUI actually decides where things go.
@State, @Binding, @Observable, @Environment — choosing the right one is most of SwiftUI architecture.
Lists, ForEach identity, NavigationStack, forms, and the controls users actually touch.
Implicit and explicit animation, transitions, gestures, shapes and custom drawing.
Liquid Glass, the current toolbar and tab APIs, scroll effects, and the SwiftUI shipped for iOS 26 and 27.
Observation, unidirectional data flow, dependency injection, and how to keep a SwiftUI app testable as it grows.
SwiftData models and queries, URLSession, Codable, caching, and error handling across the network boundary.
Accessibility, performance, Swift Testing, and instrumenting an app you intend to keep.
Project structure, build settings, privacy manifests, TestFlight and App Review.
The system surfaces beyond your main screen: widgets, notifications, and what your app may do when the user is not looking.