Mobile development

Stage 1 of 7 · 10 lessons · ~2 months

Swift fundamentals

Learn the language your apps will be written in before touching UI code. Null safety, collections and async code matter more on mobile than most beginners expect.

Start: Constants, variables and types

Lessons· one lesson for each topic, in this order

  1. 1Constants, variables and types
  2. 2Optionals and unwrapping
  3. 3Functions and closures
  4. 4Structs versus classes
  5. 5Enums with associated values
  6. 6Protocols and extensions
  7. 7Arrays, dictionaries and sets
  8. 8Error handling
  9. 9async/await basics
  10. 10Swift Package ManagerOptional

Start with

  • CourseFree
    100 Days of SwiftUI

    Paul Hudson (Hacking with Swift) · Beginner

    Days 1 to 15 teach Swift, with a checkpoint exercise every other day

Practise

  • Dart, TypeScript, Kotlin and Swift tracks with small exercises and free mentor feedback

Keep handy

Also worth your time

Before moving on: Solve 15 exercises on Exercism in your language, then write a small console program, such as a to-do list or a grade calculator, that uses classes, collections, error handling and one async call.

Tauseef's advice
iOS development needs a Mac with a recent Xcode, so sort that out before you start. Spend real time on optionals and on structs versus classes, because SwiftUI is built on value types and they will confuse you later otherwise.

Mark this stage as not done?