AP3
All topics

Native language / queued after the web foundation

Swift Fundamentals

Extend a strong web and systems foundation into the language of Apple platforms.

Why this matters

Swift is a specialization, not an escape from the web. Learning it after TypeScript, runtime ownership, data, and operations creates a better chance of building native software that is both expressive and dependable.

Concepts to learn

  • Syntax, optionals, enums, and data modeling
  • Protocols and generics
  • Typed error handling
  • Async/await and networking
  • Testing and dependency boundaries

Apply It in Casset

Casset is the working environment for this skill—not the curriculum itself.

  • Build a small typed client for the existing Casset API rather than inventing a second data model.
  • Model artist, release, track, access, and failure states with Swift enums and explicit errors.
  • Verify API decoding and degraded states against real and fixture responses.

Suggested project

Native Casset companion

Begin with a read-only Swift client that can fetch and render one artist catalog reliably.

Open project notebook

Evidence of completion

These are completion conditions, not claimed achievements. Each stays planned until it links to a real artifact or verification.

  • implementationA small working Swift client using the existing public contractsplanned
  • testsDecoding, networking, cancellation, and failure testsplanned
  • reflectionA comparison of Swift and TypeScript state modelingplanned

Open questions

  • Which existing contracts are stable enough to become native dependencies?
  • Where should the native client adapt web-shaped data, and where should the API improve?

Related notes

Books, talks, and useful things

  • book
    The Swift Programming LanguageApple
  • course
    Develop in SwiftApple

Reflection journal

The goal is not to translate JavaScript habits into Swift. It is to bring the same ownership discipline into a different grain.