Course Overview
What this Swift Programming course covers, how to use it, prerequisites.
A structured, hands-on course on the Swift programming language. It runs from your first print to optionals, value types, protocol-oriented programming, generics, memory management (ARC), error handling, macros, Swift Concurrency (async/await, actors, Sendable, Swift 6 data-race safety), ownership and noncopyable types, testing (XCTest and Swift Testing), the Swift Package Manager, SwiftUI app development, server-side Swift, C/C++ interop, and production practices.
Targets Swift 6.x (6.0–6.2). Version-specific features are marked. Check swift.org and the Swift Evolution dashboard for your toolchain.
Course Overview
Beginners, aspiring iOS/macOS developers, Objective-C developers, developers from Kotlin/Java/C#/Python/JS, server-side developers
Basic computer literacy. No programming experience required for Part I.
~110–130 hours (self-paced), 12–14 weeks macOS: Xcode 16+ (includes Swift 6). Linux/Windows: Swift toolchain from swift.org (or swiftly), VS Code + the Swift extension.
Swift Playgrounds (iPad/Mac), Xcode Playgrounds, Exercism Swift track, Advent of Code, Hacking with Swift's 100 Days of Swift/SwiftUI
Foundations → Functions & Types → Protocols & Generics → Advanced Language → Concurrency → Foundation → Tooling & Interop → Apps & Production
(1–8) (9–18) (19–24) (25–32) (33–38) (39–43) (44–48) (49–57)