SwiftUI Academy · Les

JSON decoderen met Codable

Zet JSON om in Swift-modelstructs.

Les 1 van 413 stappen

JSON decoderen met Codable is een gratis SwiftUI Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject SwiftUI Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus SwiftUI Academy bevat in totaal 4 lessen.

Waarom JSON moet worden gedecodeerd

API's spreken JSON, een tekstindeling die Swift niet rechtstreeks kan gebruiken. Je decodeert die tekst naar echte Swift-typen waarmee je kunt werken. 📦

Maak kennis met Codable

Met het protocol Codable kan een type zichzelf automatisch naar en van JSON omzetten, zodat je zelden zelf parseercode hoeft te schrijven.

Een Codable-struct

Voeg gewoon Codable toe aan je struct. Swift genereert automatisch het coderen en decoderen voor elke opgeslagen eigenschap.

struct User: Codable {
    let id: Int
    let name: String
}

JSON-sleutels laten overeenkomen

Swift koppelt elke eigenschapsnaam rechtstreeks aan de overeenkomende JSON-sleutel. Zo vult "name" in JSON precies de eigenschap name.

{ "id": 1, "name": "Ada" }

Decoderen met JSONDecoder

Een JSONDecoder zet ruwe Data om naar jouw type. Je geeft aan welk type je verwacht en de rest wordt voor je gedaan.

let user = try JSONDecoder()
    .decode(User.self, from: data)

Werken met Data

Netwerkreacties komen binnen als Data, een verzameling bytes. De decoder leest die bytes en levert jouw waarde met het juiste type op.

Arrays decoderen

Vraag voor het decoderen van een JSON-lijst om een array van jouw type. Met één aanroep krijg je een direct bruikbare Swift-array. 🎉

let users = try JSONDecoder()
    .decode([User].self, from: data)

Hernoemen met CodingKeys

Wanneer JSON-sleutels afwijken van jouw namen, voeg je CodingKeys toe om een snake_case-sleutel aan een nette Swift-eigenschap te koppelen.

enum CodingKeys: String, CodingKey {
    case name = "full_name"
}

Optionele eigenschappen

Markeer een eigenschap als optional wanneer de sleutel kan ontbreken. De decoder stelt deze dan eenvoudig in op nil in plaats van een fout te geven.

let avatar: String?

Decoderen kan fouten geven

Als de structuur van de JSON niet overeenkomt met je type, geeft decoderen een fout. Zet de aanroep altijd in try, zodat je ongeldige gegevens kunt afhandelen.

Geneste modellen

Geneste JSON-objecten worden geneste structs. Maak elk niveau Codable en Swift decodeert de hele boom in één keer.

struct Post: Codable {
    let author: User
}

Korte controle

Korte controle over het omzetten van JSON naar Swift-typen.

Samenvatting: Codable

Je hebt geleerd dat Codable samen met JSONDecoder JSON omzet naar getypeerde Swift-waarden, met CodingKeys voor hernoemen en optionals voor ontbrekende sleutels. 🙌

Gratis beginnen

Leer Swift met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
30
Lessen
120

Veelgestelde vragen

Is de les “JSON decoderen met Codable” gratis?

Ja — de volledige tekst van “JSON decoderen met Codable” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus SwiftUI Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus SwiftUI Academy bevat in totaal 4 lessen.

Wat leer ik in “JSON decoderen met Codable”?

Zet JSON om in Swift-modelstructs. Je oefent met SwiftUI Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met SwiftUI Academy te beginnen?

Ervaring vooraf is niet nodig. SwiftUI Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.

Hoe lang duurt de les “JSON decoderen met Codable”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over SwiftUI Academy?

Ja. Elke les over SwiftUI Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. JSON decoderen met Codable
  2. API's aanroepen met URLSession
  3. De .task-modifier
  4. Laad- en foutstatussen
← Terug naar SwiftUI Academy