Codable – JSON facile con Swift 4


JSON è ormai utilizzato diffusamente come formato di interscambio dati su internet. È molto comune per uno sviluppatore lavorare con JSON, specie se si tratta di app per smartphone.

In Swift 4 è stato introdotto il protocol Codable come parte del framework Foundation e serializzare o deserializzare un oggetto in JSON richiede tre linee di codice ;).

Le nuove API disponibili nel framework Foundation sono state presentate al WWDC 2017, vi consiglio di guardare il video a questo link: What’s New in Foundation (le API di cui sto parlando vengono illustrate dal minuto 23 in poi).

Vediamo come è diventato immediato e semplice convertire un oggetto in JSON e viceversa.

Continua a leggere Codable – JSON facile con Swift 4

Client REST in Swift per app su iOS e macOS

Quando realizziamo un app dobbiamo spesso consentirle di comunicare con un server per inviare o ricevere messaggi.

Spesso questa comunicazione avviene attraverso una web service, cioè (generalizzando e semplificando molto) un servizio reso disponibile attraverso una rete distribuita che fa uso del protocollo HTTP per il trasporto dei messaggi.

Cos’è REST e cosa c’entra con la comunicazione della nostra app?

REST sta per REpresesentational State Transfer ed è un insieme di principi architetturali per la progettazione di un sistema di ipertesto distribuiti. Sarebbe interessante, ma non voglio dilungarmi al riguardo in questo articolo. Per adesso ci basta sapere che vengono definiti dei vincoli che riguardano la comunicazione di un client con un server. Questi vincoli stabiliscono che la comunicazione deve essere costituita da un’interfaccia uniforme, che il server non deve memorizzare nessun contesto tra una comunicazione e l’altra (stateless), …

Un concetto fondamentale è l’esistenza delle risorse a cui si può accedere tramite un identificatore globale (URI: Uniform Resource Interface). Il client deve solo sapere qual è l’URI per accedere alla risorsa, gli eventuali parametri (ID della risorsa ad esempio) e il formato di rappresentazione che generalmente (e in questo articolo) è il JSON (guarda come è semplice lavorare in JSON con Swift 4).

(Se vuoi una classe Swift pronta come base per un client: https://mirchaemanuel.com/una-classe-swift-per-un-client-webservice/

Continua a leggere Client REST in Swift per app su iOS e macOS