← Languages

Swift

Full course · 21 lessons

Swift 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.

Knowledge Course
01

Getting Started with Swift

Install Swift, run scripts, and understand the SwiftPM workflow.

45 min→
02

Variables and Data Types

Constants, variables, type inference, and the core value types.

60 min→
03

Numbers and Math

Integer types, floating point, overflow behavior, and math.

50 min→
04

Strings and String Manipulation

String literals, interpolation, Unicode, and the string API.

60 min→
05

Control Flow

Conditionals, switch, and loops.

50 min→
06

Collections: Array, Dictionary, Set

The three collection types and their algorithms.

60 min→
07

Functions and Closures

Function declarations, labels, and closure capture.

60 min→
08

Structs and Value Semantics

Structures, properties, methods, and copy-on-write behavior.

60 min→
09

Classes and Reference Semantics

Classes, inheritance, and reference behavior.

60 min→
10

Enums and Pattern Matching

Enumerations with associated values and pattern matching.

75 min→
11

Protocols and Extensions

Protocols, conformances, and extension-driven design.

75 min→
12

Optionals and Optional Chaining

Optional values, binding, chaining, and nil coalescing.

50 min→
13

Error Handling

Throwing functions, do-catch, and error propagation.

60 min→
14

Generics

Generic functions, types, and constraints.

75 min→
15

Concurrency: async/await

Async functions, tasks, and structured concurrency.

75 min→
16

Actors and Sendable

Actor isolation, Sendable, and safe shared state.

75 min→
17

Memory Management and ARC

Automatic Reference Counting, strong cycles, and weak references.

60 min→
18

Codable and File I/O

Codable, JSON encoding/decoding, and the file system.

60 min→
19

Swift Package Manager

Package.swift, dependencies, and building libraries.

60 min→
20

Testing with XCTest and Swift Testing

Unit tests, assertions, and test organization.

60 min→
21

Performance and Optimization

Value semantics, COW, profiling, and measurement.

75 min→
Curated Resources