Level 2 — Intermediate
These lessons cover structs and classes, enums, protocols, extensions, generics, error handling, Codable and JSON, networking, Swift Package Manager, and testing. Recommended: the Level 1 lessons, especially optionals, collections, functions, and closures.