1.1 L'origine di JSON
JSON (JavaScript Object Notation) è un formato di testo usato per lo scambio di dati. È stato sviluppato nei primi anni 2000 da Douglas Crockford e ha guadagnato popolarità grazie alla sua semplicità e facilità d'uso.
L'idea principale di JSON è di creare un formato che sia facile da leggere per gli esseri umani e allo stesso tempo semplice da analizzare e generare dai programmi. JSON è stato inizialmente sviluppato sul sintassi di JavaScript, ma il suo formato è così universale che è diventato largamente utilizzato e supportato da molti altri linguaggi di programmazione. Ora JSON può essere usato indipendentemente da JavaScript: è diventato uno standard per lo scambio di dati in vari sistemi e applicazioni, indipendentemente dal linguaggio di programmazione in cui sono scritti.
JSON è praticamente la registrazione dello stato di un oggetto nel linguaggio JavaScript. Beh, quasi. Ecco perché JSON è particolarmente popolare tra chi scrive API per il frontend. Inoltre, JSON è ampiamente usato per memorizzare file di configurazione e log.
Caratteristiche principali di JSON
Leggibilità umana:
Il formato JSON è facile da leggere e comprendere dalle persone. Questo lo rende comodo per l'uso nei file di configurazione e per lo scambio di dati tra client e server.
Indipendenza dal linguaggio:
Anche se JSON è originariamente basato sulla sintassi di JavaScript, può essere usato con qualsiasi linguaggio di programmazione. Molti linguaggi forniscono librerie integrate per lavorare con JSON.
Facilità di parsing:
Il parsing (dall'inglese "parsing") — è il processo di analisi e elaborazione della struttura dei dati, generalmente testo o codice, per estrarre informazioni significative. Nel contesto della programmazione, il parsing viene spesso applicato per trattare dati testuali. JSON può essere facilmente analizzato e generato sia sul lato client che sul lato server. Al giorno d'oggi, ogni linguaggio di programmazione possiede una libreria che consente di convertire facilmente un oggetto in JSON e viceversa.
Standard e campione dichiarato:
Già 10 anni fa JSON competiva con XML come standard API. Ora JSON ha vinto ed è il leader indiscutibile. Nell'API del vostro backend potete supportare solo JSON, e questo sarà sufficiente, anche se il vostro API è destinato ad essere chiamato da altri server.
1.2 La struttura di JSON
JSON rappresenta un insieme di coppie "chiave-valore", e la sua sintassi consiste di due strutture fondamentali:
Oggetti: Gli oggetti rappresentano insiemi non ordinati di coppie "chiave-valore". Le chiavi sono stringhe e i valori possono essere di qualsiasi tipo di dato supportato da JSON.
{
"name": "John",
"age": 30,
"isStudent": false,
"courses": ["Math", "Science"],
"address": {
"city": "New York",
"zipCode": "10001"
}
}
Array/Elenco: Gli array rappresentano insiemi ordinati di valori (simili alle liste in Python). I valori possono essere di qualsiasi tipo di dato supportato da JSON.
["Apple", "Banana", "Cherry", 100, 3.14, true]
Molto simile agli oggetti Python, no?
Il fatto è che JSON è praticamente uno standard per la registrazione dei dati in JavaScript, e JavaScript a suo tempo è stato ispirato da Python. Quindi usare JSON ti piacerà.
1.3 Tipi di dati in JSON
JSON supporta i seguenti tipi di dati:
Stringhe: rappresentate tra virgolette doppie.
"name": "John"
Numeri: possono essere interi o in virgola mobile.
"age": 30
Oggetti: insiemi non ordinati di coppie "chiave-valore".
"address": {
"city": "New York",
"zipCode": "10001"
}
Array/Elenco: insiemi ordinati di valori.
"courses": ["Math", "Science"]
Valori Booleani: true
o false
.
"isStudent": false
A differenza di Python, true
e false
qui sono scritti in minuscolo.
null
: rappresenta un valore vuoto.
"middleName": null
Data e ora: sono trasmesse come stringa.
{
"datetime": "2023-05-15T14:30:00Z",
"date": "2023-05-15",
"time": "14:30:00"
}
Un tempo erano talvolta trasmessi come numero nel formato UNIX timestamp, ma questo approccio è passato di moda.
GO TO FULL VERSION