What You Should Know Now — and What's Next
What You Should Know Now
- Core syntax: constants and variables, type inference, strings, numbers,
conditionals,
switch, loops, and ranges - Optionals and every way to unwrap them safely
- Arrays, dictionaries, sets, tuples, functions, closures, and
map/filter/reduce - Structs, classes, enums with associated values, and when to use each
- Protocols, extensions, generics, and access control
- Error handling with
throws,do/catch, andtry? - Codable and JSON, networking with
URLSession, files, and Swift Package Manager - Testing with Swift Testing and XCTest, and debugging with LLDB
- ARC and reference cycles, protocol-oriented design,
someandany async/await, structured concurrency, actors, and Swift 6 data-race safety- SwiftUI fundamentals and state management, app architecture, performance, security, and shipping to the App Store
What Should You Learn Next?
- Apple platform frameworks — SwiftData or Core Data for storage, MapKit, Core Location, notifications, widgets, and the frameworks for the app you actually want to build.
- Design — Apple's Human Interface Guidelines, accessibility, and animation, which make the difference between a working app and a good one.
- Server-side Swift — Vapor or Hummingbird for APIs, sharing model code with your apps.
- A related language — Kotlin for Android, which shares many of Swift's ideas (optionals, data classes, extension functions); or Rust for systems programming with a similar focus on safety.
- Backend fundamentals — SQL, HTTP APIs, and authentication, so you can build the services your apps talk to.
Build Something
Pick a small app you would genuinely use — a habit tracker, a recipe box, a workout log — and ship it to TestFlight, even if only you and a few friends install it. Finishing and shipping one small app teaches more than starting five big ones.