← 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