Red Yard

JSON: cos’è, come funziona e con quali tool
Ecco un’introduzione pratica e teorica sul mondo di JSON, i suoi punti di forza ma anche i suoi limiti
Json come funziona
Json come funziona
Json come funziona
JSON, acronimo di JavaScript Object Notation, è una tecnologia di programmazione che deriva da JavaScript. Con la sua sintassi più semplice e compatta rispetto a molti suoi rivali, ha conquistato il web ed è diventato uno dei formati preferiti.

Cos’è JSON

JSON – JavaScript Object Notation – è una tecnologia di programmazione che struttura dati in formato testuale, il cui obiettivo è lo scambio di tali dati, principalmente tra server e applicazione web.
JSON deriva da JavaScript, infatti, la struttura di un file JSON è simile a quella utilizzata per gli oggetti JavaScript; la differenza sta nel fatto che JSON è supportato in modo nativo o tramite librerie dalla maggior parte dei linguaggi di programmazione.
JSON negli ultimi anni è diventato onnipresente sul web, soprattutto perchè possiede una sintassi più semplice e compatta rispetto a quella dei suoi rivali ed attualmente è il formato preferito per quasi tutti i servizi Web pubblicamente disponibili, e viene spesso utilizzato anche per i servizi Web privati.

Quando usare JSON

JSON si può usare in diverse occasioni, vi elenchiamo di seguito quelle per cui è più adatto e quelle in cui sarebbe meglio non adoperarlo:
✅ JSON è il formato dati più adatto per l’invio di dati tra server web, browser e applicazioni mobile, perché ha uno schema flessibile, non rigido; questo è un pro ma anche un contro, in quanto uno schema di questo tipo potrebbe complicare e non assicurare la lettura e la scrittura corretta di JSON. Il suo più grande vantaggio resta, comunque, la semplicità con cui può essere letto, compreso e, spesso, adattato al linguaggio di programmazione che preferite.
✅ Nella comunicazione da server a server JSON può rivelarsi una buona soluzione per il vostro scopo ma di sicuro non avrà la stessa chiarezza che lo contraddistingue nella comunicazione tra web e mobile.
❌ JSON è supportato solo da alcuni database relazionali ma, nonostante ciò, sarebbe meglio farne uso il meno possibile. Il motivo è che i database relazionali sono stati ottimizzati per dati strutturati che si adattano a uno schema particolare.

Perché usare JSON

Ci sono diversi motivi per cui conviene usare JSON:
  • È una tecnologia di programmazione con una sintassi compatta e semplice, quindi, più leggibile rispetto a formati come l’XML;
  • I file JSON vengono letti molto più rapidamente da parte del software;
  • È adattabile e facile da manipolare in diversi linguaggi di programmazione;
  • È un formato facile sia da comprendere da parte delle persone, che da analizzare per i browser.
Tra i diversi tipi di dati troviamo gli oggetti, gli array, le stringhe, i numeri e i valori booleani; di seguito, andremo ad analizzare alcuni di loro.

Come funziona JSON

JSON funziona basandosi su determinati tipi di dati e di regole sintattiche che lo caratterizzano.
Ecco quali sono le regole sintattiche fondamentali di JSON:
  • I dati sono separati tra loro dalla virgola ,
  • Gli oggetti sono contenuti all’interno delle parentesi graffe { }
  • Gli array sono racchiusi nelle parentesi quadre [ ]
  • Le stringhe sono contenute all’interno delle virgolette “ “
Tra i diversi tipi di dati troviamo gli oggetti, gli array, le stringhe, i numeri e i valori booleani; di seguito, andremo ad analizzare alcuni di loro.

Gli oggetti

Partiamo subito da un esempio di oggetto JSON che ci semplificherà l’analisi nel dettaglio:
{ “cognome”: “Rossi”, “nome”: “Giulia”, “età”: 30, “patente”: true, “automobile”: “Audi”, “colore”: “grigio”, “targa”: “AA123BB” }
Vediamolo insieme nel dettaglio:
  • L’oggetto è contenuto all’interno di una coppia di parentesi graffe;
  • Ci sono una serie di coppie composte da una proprietà e un valore, separati tra loro dai due punti, che costituiscono l’oggetto. Nel seguente esempio, “cognome”: “Rossi” definiamo come proprietà “cognome” e come valore “Rossi”;
  • Le diverse coppie proprietà/valore sono separate le une dalle altre da virgole come nel seguente esempio “cognome”: “Rossi”, “nome”: “Giulia”;
  • Le stringhe contenute all’interno delle virgolette possiedono caratteri alfanumerici, parole e testo, come ad esempio “automobile”: “Audi” oppure “targa”: “AA123BB”;
  • I numeri come nel seguente esempio “età”: 30, o valori booleani come “patente”: true, non sono contenuti tra le virgolette.
Quelli che abbiamo osservato sono degli esempi, ma è bene considerare che esistono diversi tipi di oggetti, più o meno complessi, caratterizzati da diverse tipologie di coppie proprietà/valore.

Gli array

Una sequenza di oggetti prende il nome di array. Anche in questo caso vediamo subito un esempio da poter analizzare:
[ { “cognome”: “Rossi”, “nome”: “Giulia”, “età”: 30 “patente”: true, “automobile”: “Audi”, “colore”: “grigio”, “targa”: “AA123BB” },
{ “cognome”: “Bianco”, “nome”: “Stefano”, “età”: 46 “patente”: true, “automobile”: “BMW”, “colore”: “bianco”, “targa”: “AE278BJ” } ]
Possiamo notare che un array in JSON è formato da un insieme di oggetti, separati tra loro da virgole e racchiusi all’interno di due parentesi quadre.

Limiti di JSON

Abbiamo detto che JSON ha molti punti a suo favore, tra cui sicuramente la sintassi semplice e compatta così come il formato facile e adattabile, ma è giusto specificare che ha anche dei limiti da prendere in considerazione quando decidiamo di adoperarlo.
Ve ne elenchiamo alcuni di seguito:
  • Schema flessibile: come avevamo già anticipato, questo può sicuramente essere un pro, vista la libertà nella rappresentazione dei dati. Ma uno schema di questo tipo diventa controproducente perché potrebbe non assicurare la lettura e la scrittura corretta di JSON
  • Solo un tipo di numero: questo significa non poter sfruttare i diversi tipi di numeri disponibili in molti linguaggi di programmazione.
  • No data: non essendo presente bisogna inserirla in altro modo, ricorrere a delle alternative, che possono creare problemi a livello di formattazione.
  • No commenti: ciò rende impossibile annotare i campi in linea, richiedendo ulteriore documentazione e aumentando la probabilità di incomprensioni.
  • Verbosità: l’essere più compatto e meno lungo da scrivere rispetto ad altri formati, lo rende molto più leggibile ma non il più conciso tra tutti. In questo caso sarebbe meglio volgere l’attenzione ad altri formati.

Utility per JSON

Vi sono alcuni tool molto utili quando non dobbiamo scrivere il codice partendo da zero ma vogliamo semplicemente esaminare o modificare dei dati che siano già codificati in JSON.
  • JSONLint permette di formattare un codice JSON;
  • Stack.hu permette di visualizzare la struttura del codice JSON tramite una specie di diagramma per poterlo analizzare con più facilità;
  • Convertcsv.com si rivela uno strumento utile quando si vogliono convertire i dati dal formato JSON al formato CSV (ossia, visualizzabile sotto forma di celle, tabelle e colonne).
Keywords Vocabulary
JSON (JavaScript Object Notation) è una tecnologia di programmazione che struttura dati in formato testuale, adatto per l’invio di dati tra server web, browser e applicazioni mobile.
Database relazionale è un tipo di database che raccoglie e organizza informazioni in dati strutturati su tabelle, righe e colonne; le tabelle sono collegate tra loro tramite relazioni.
Oggetti in JSON sono dei dati organizzati in coppie proprietà/valore, racchiusi in parentesi graffe.
Array in JSON è una sequenza di oggetti separati da virgole e racchiusi in parentesi quadre.
Stringa è una sequenza finita di caratteri, contenuta all’interno delle virgolette.
Valore booleano è un tipo di dato che comprende solo due valori, ossia vero (true) o falso (false).

Donatella Rinaldi

Writer & Blogger

JSON: cos’è, come funziona e con quali tool
SHARE

Lascia un commento!

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *