Convertitore JSON in Swift — Genera modelli Codable
Converti JSON in struct o classi Swift Codable online con CodingKeys, opzionali e tipi annidati. Pronto per JSONDecoder, gratis, istantaneo e privato.
🔒 Funziona interamente nel tuo browser — nulla viene caricatoModelli Swift Codable dal JSON
Il protocollo Codable di Swift riduce la decodifica del JSON a una sola riga, una volta che hai tipi che corrispondono esattamente al payload. Questo convertitore da JSON a Swift genera quei tipi da un esempio. Ogni oggetto diventa una struct (o class) conforme a Codable, le chiavi diventano proprietà camelCase, gli oggetti annidati diventano tipi propri, gli array diventano array Swift tipizzati e i valori assenti o null in parte dell'esempio diventano opzionali. Enum CodingKeys espliciti ricollegano ogni proprietà alla chiave JSON originale, così le API in snake_case si decodificano senza alcuna strategia personalizzata.
Il motore sottostante è quicktype, che unisce tutti gli elementi di ogni array prima di dedurre i tipi. Un campo presente solo in alcuni elementi diventa comunque una proprietà opzionale, evitando il temuto errore di decodifica keyNotFound a runtime.
Struct, classi e helper
Le struct sono l'impostazione predefinita perché i value type sono idiomatici per i modelli in SwiftUI e nella maggior parte del codice iOS e macOS moderno. Passa alle classi quando ti servono la semantica per riferimento o l'interoperabilità con Objective-C. Per impostazione predefinita l'output contiene anche helper di comodo — inizializzatori da dati e stringhe JSON, metodi jsonData() e jsonString() e un mutatore with(...) — che rendono i modelli facili da usare nei test e nelle preview. Seleziona Types only se preferisci un file minimale con le sole dichiarazioni Codable.
Consigli prima di incollare in Xcode
Usa un esempio ricco, con più elementi per array e campi opzionali compilati. Rinomina il tipo radice da Root a qualcosa di significativo come FeedResponse; il download userà quel nome. In seguito, valuta di trasformare in enum i campi stringa con valori noti, di usare Date con un dateDecodingStrategy corrispondente e di marcare le proprietà come var dove ti serve la mutazione. Tutto avviene in locale nel tuo browser, quindi le risposte API private non vengono mai caricate.
Come usare
- Incolla il JSONIncolla una risposta JSON o carica l'esempio.
- Scegli lo stileSeleziona struct o class, i CodingKeys e se includere gli helper.
- Copia in XcodeCopia il codice Swift o scarica un file .swift per il tuo progetto.
Domande frequenti
I tipi generati sono Codable?
Codable, quindi puoi decodificarla subito con JSONDecoder.A cosa servono i CodingKeys espliciti?
Posso generare classi invece di struct?
class se ti serve la semantica per riferimento, per esempio per Core Data o per l'interoperabilità con Objective-C.