Swift:
Lavorare con JSON

Come fare:

Swift rende l’analisi di JSON diretta con il protocollo Codable. Ecco come decodificare JSON in un oggetto Swift:

import Foundation

// Definisci un modello che si conforma a Codable
struct User: Codable {
    var name: String
    var age: Int
}

// Stringa JSON
let jsonString = """
{
    "name": "John Doe",
    "age": 30
}
"""

// Converti la stringa JSON in Data
if let jsonData = jsonString.data(using: .utf8) {
    // Decodifica i dati JSON in un oggetto User
    do {
        let user = try JSONDecoder().decode(User.self, from: jsonData)
        print("Nome: \(user.name), Età: \(user.age)")
    } catch {
        print("Errore nella decodifica del JSON: \(error)")
    }
}

Output di esempio:

Nome: John Doe, Età: 30

Approfondimento

JSON (JavaScript Object Notation) è stato ampiamente adottato sin dai primi anni 2000, dopo che Douglas Crockford lo ha specificato. Ha sostituito XML in molti casi d’uso grazie alla sua sintassi più semplice e migliori prestazioni. Mentre Codable di Swift è il punto di riferimento per JSON, esistono alternative come JSONSerialization per quando si ha a che fare con tipi non conformi a Codable. Sotto il cofano, Codable astrae l’elaborazione di basso livello e rende la serializzazione/deserializzazione senza soluzione di continuità.

Vedi Anche

  • Esplora di più su JSON e Swift nel blog ufficiale di Swift: Swift.org
  • Controlla la documentazione di Codable: Swift Codable
  • Per strutture JSON complesse, considera l’uso di librerie di terze parti come SwiftyJSON disponibile su GitHub.