JSON: cos’è, come funziona e perché viene utilizzato

Cos’è JSON?

JSON, acronimo di JavaScript Object Notation è un formato di testo leggero utilizzato per lo scambio di dati in un formato facilmente leggibile dalle macchine. È stato sviluppato a metà degli anni ’90 come alternativa al formato di dati XML (Extensible Markup Language), che era ampiamente utilizzato in quel periodo.
JSON può essere utilizzato con HTML e CSS per ottenere e visualizzare i dati. Ad esempio, si può utilizzare questo file per fornire i dati di una tabella HTML o per popolare un menu a discesa CSS.

Come funziona JSON?

Utilizza una sintassi basata sulla notazione di oggetti di JavaScript, con chiavi e valori racchiusi tra parentesi graffe. I valori possono essere di diverse tipologie, come stringhe, numeri, booleani, array o oggetti annidati.

Per utilizzare JSON con HTML, è necessario prima caricare il file in una pagina HTML utilizzando uno script JavaScript. Una volta caricato il file, è possibile accedere ai dati utilizzando le proprietà dell’oggetto JSON e visualizzarli nella pagina HTML utilizzando i tag HTML appropriati.

Per utilizzare JSON con CSS, è necessario prima caricare il file in una pagina HTML come descritto sopra. Una volta caricato il file, è possibile accedere ai dati utilizzando le proprietà dell’oggetto JSON e utilizzarle per modificare gli stili CSS della pagina. Ad esempio, si potrebbe utilizzare un valore del file JSON per modificare il colore di sfondo di un elemento HTML o per modificare la dimensione del carattere di un paragrafo.
In sintesi, JSON può essere utilizzato con HTML e CSS per ottenere e visualizzare i dati in modo dinamico nella pagina web.

Ecco un esempio di un oggetto JSON:

{
“nome”: “Francesco”,
“anni”: 30,
“altezza”: “173cm”
}

Perché viene utilizzato JSON?

Viene ampiamente utilizzato per lo scambio di dati in ambienti web, poiché è facile da leggere e da scrivere sia per le macchine che per gli esseri umani.
È anche facilmente trasportabile attraverso la rete e può essere facilmente convertito in oggetti di JavaScript o altri linguaggi di programmazione.
Viene utilizzato in molti scenari, come nello sviluppo di API (Application Programming Interface), per scambiare dati tra server e client o tra diverse applicazioni. Viene spesso utilizzato anche per la persistenza dei dati, come nel caso di database NoSQL.

Come utilizzare JSON

Per utilizzarlo, è possibile seguire alcuni passaggi semplici. Innanzitutto, è necessario creare un file con l’estensione .json e inserire i dati nel formato JSON. Questo può essere fatto manualmente utilizzando un editor di testo o un IDE. È importante assicurarsi che la sintassi sia corretta per evitare errori durante la lettura o la manipolazione dei dati.
Un’alternativa è utilizzare strumenti di generazione, disponibili in diversi linguaggi di programmazione, che semplificano il processo di creazione di dati JSON complessi. Questi strumenti consentono di definire la struttura dei dati in modo più intuitivo e generano automaticamente il file corrispondente.

Una volta che il file è stato creato, è possibile leggere i dati al suo interno utilizzando i metodi appropriati forniti dai linguaggi di programmazione. Ad esempio, in JavaScript, si può utilizzare il metodo JSON.parse() per analizzare il JSON e ottenere un oggetto JavaScript che rappresenta i dati. Questo oggetto può quindi essere utilizzato per accedere e manipolare i dati secondo le proprie esigenze.
In altri linguaggi di programmazione, esistono librerie specifiche per il parsing e la gestione dei dati. Queste librerie semplificano il processo di lettura e manipolazione dei dati, offrendo funzioni e metodi appositamente progettati per lavorare con questo formato.

Altre caratteristiche di JSON

Oltre alle sue caratteristiche base, JSON offre alcune funzionalità extra che lo rendono ancora più flessibile e adatto allo scambio di dati.

Ecco alcune delle sue caratteristiche principali:
  1. Supporto per i commenti: supporta i commenti utilizzando il simbolo “//” per i commenti a riga singola e “/* */” per i commenti multiriga;
  2. Supporto per le stringhe multilinea: supporta le stringhe multilinea utilizzando il simbolo “” seguito da una nuova riga;
  3. Supporto per gli escape characters: supporta gli escape characters per inserire caratteri speciali all’interno delle stringhe, come ad esempio il carattere di nuova riga “n” o il carattere di tabulazione “t”.

JSON vs XML

Sono due formati comuni utilizzati per lo scambio di dati. Ecco alcuni punti di confronto tra i due:

  • Sintassi: utilizza una sintassi più compatta e leggibile rispetto a XML. JSON si basa sulla notazione di oggetti JavaScript, mentre XML utilizza i tag per rappresentare gli elementi. Questo rende JSON più facile da scrivere e leggere per gli sviluppatori;
  • Dimensione dei dati: è solitamente più leggero di XML in termini di dimensioni dei dati. La sintassi più compatta e la mancanza di elementi di markup ridondanti rendono i file JSON più piccoli rispetto agli equivalenti file XML;
  • Facilità di parsing: può essere facilmente convertito in oggetti di JavaScript utilizzando il metodo JSON.parse(). XML richiede l’utilizzo di parser specifici per essere convertito in oggetti utilizzabili dai linguaggi di programmazione;
  • Leggibilità: è generalmente più facile da leggere per gli esseri umani grazie alla sua sintassi basata su oggetti. XML può risultare più verboso e complesso da interpretare;
  • Utilizzo: è ampiamente utilizzato nelle applicazioni web, in particolare con JavaScript, mentre XML è ancora utilizzato in vari contesti come documenti strutturati o protocolli di comunicazione.

Esempi di casi d’uso

Viene utilizzato in una vasta gamma di casi d’uso nel mondo dello sviluppo web e delle applicazioni. Ecco alcuni esempi comuni:

  • Comunicazione tra client e server: viene ampiamente utilizzato nelle API RESTful per scambiare dati tra client e server. Ad esempio, un’applicazione web potrebbe inviare una richiesta HTTP contenente dati in formato JSON al server, che li elaborerà e risponderà con una risposta contenente i dati richiesti;
  • Persistenza dei dati: viene utilizzato come formato per la persistenza dei dati in molti database NoSQL. Questi database, come MongoDB, consentono di memorizzare documenti direttamente, senza doverli convertire in un formato diverso;
  • Configurazioni: viene utilizzato per rappresentare configurazioni di applicazioni. Ad esempio, un’applicazione potrebbe leggere questo file di configurazione per determinare le impostazioni di funzionalità o per personalizzare l’aspetto dell’applicazione;
  • Integrazione di servizi esterni: viene utilizzato per integrare servizi di terze parti nelle applicazioni. Molte API di servizi web, come le API di social media o le API di pagamento, utilizzano questo formato per scambiare dati con le applicazioni che le utilizzano.

 

Conclusione

In conclusione, JSON è un formato di testo leggero utilizzato per lo scambio di dati in un formato facilmente leggibile dalle macchine. Viene ampiamente utilizzato in ambienti web per lo scambio di dati, come nello sviluppo di API o per la persistenza dei dati.
Noi di eXceed Srl, nota web agency a Palermo, utilizziamo spesso questo formato per lo sviluppo di API e per la persistenza dei dati in progetti di e-commerce o applicazioni web. Riteniamo che sia uno strumento molto utile e flessibile per lo scambio di dati e lo consigliamo vivamente nello sviluppo di progetti che richiedono la gestione di dati strutturati.