Swift
Full course · 21 lessonsSwift is the modern language for Apple platforms — iOS, macOS, watchOS, and tvOS. It is fast, safe, and expressive, powering everything from the iPhone apps you love to server-side systems. These are the definitive free resources — vetted, current, and complete.
Getting Started with Swift
Install Swift, run scripts, and understand the SwiftPM workflow.
Variables and Data Types
Constants, variables, type inference, and the core value types.
Numbers and Math
Integer types, floating point, overflow behavior, and math.
Strings and String Manipulation
String literals, interpolation, Unicode, and the string API.
Control Flow
Conditionals, switch, and loops.
Collections: Array, Dictionary, Set
The three collection types and their algorithms.
Functions and Closures
Function declarations, labels, and closure capture.
Structs and Value Semantics
Structures, properties, methods, and copy-on-write behavior.
Classes and Reference Semantics
Classes, inheritance, and reference behavior.
Enums and Pattern Matching
Enumerations with associated values and pattern matching.
Protocols and Extensions
Protocols, conformances, and extension-driven design.
Optionals and Optional Chaining
Optional values, binding, chaining, and nil coalescing.
Error Handling
Throwing functions, do-catch, and error propagation.
Generics
Generic functions, types, and constraints.
Concurrency: async/await
Async functions, tasks, and structured concurrency.
Actors and Sendable
Actor isolation, Sendable, and safe shared state.
Memory Management and ARC
Automatic Reference Counting, strong cycles, and weak references.
Codable and File I/O
Codable, JSON encoding/decoding, and the file system.
Swift Package Manager
Package.swift, dependencies, and building libraries.
Testing with XCTest and Swift Testing
Unit tests, assertions, and test organization.
Performance and Optimization
Value semantics, COW, profiling, and measurement.
Free Books
The Swift Programming Language (Official)
The official Swift book by Apple covering the complete language from basics to advanced features like generics, protocols, and memory safety.
Hacking with Swift (Free Edition)
A massive free collection of Swift tutorials, projects, and challenges by Paul Hudson. Covers SwiftUI, UIKit, and Swift itself.
Swift Apprentice (Kodeco)
A free book for beginners learning Swift step-by-step with practical exercises and real-world examples.
Official Documentation
swift.org
The home of the Swift project — compiler, standard library, package manager, and community resources.
Apple Developer Documentation
Apple's official Swift documentation with guides, API references, and Xcode integration resources.
Swift Package Index
A searchable catalog of open-source Swift packages with documentation, code coverage, and compatibility badges.
Interactive Courses
Video Courses
Stanford CS193p — Developing Apps for iOS (YouTube)
Stanfords official iOS development course recorded live. The gold standard for learning Swift and SwiftUI.
Paul Hudson — Hacking with Swift Playlist
Over 1,000 free Swift tutorials on YouTubecovering Swift basics, SwiftUI, and practical iOS app development.
Practice & Challenges
Exercism — Swift Track
100+ free coding exercises designed to teach idiomatic Swift with automated analysis and optional mentoring.
Codewars — Swift Kata
Solve community-created challenges in Swift across hundreds of difficulty levels.
LeetCode — Swift Support
Practice algorithms and data structures using Swift for technical interview preparation.
Reference & Cheatsheets
News & Updates
Community
Reddit r/swift
The largest Swift community on Reddit for discussions, app showcases, and technical questions.
Swift Forums (Official)
The official Swift server for language design discussions, evolution proposals, and community support.
Swift Discord
Active real-time chat community for Swift developers with channels for iOS, server-side, and package development.

