Se lavori con siti web, applicazioni, API, WordPress, software gestionali o intelligenza artificiale, prima o poi incontri qualcosa del genere:
{
"nome": "AlphaDev",
"attivita": "Web Agency",
"servizi": ["Siti Web", "SEO", "Software", "AI"],
"online": true
}No, non è un programmatore che ha dimenticato di finire una frase.
È JSON, uno dei formati più utilizzati per rappresentare, organizzare e scambiare dati tra software diversi.
Dietro quelle apparentemente innocue parentesi graffe si nasconde una buona parte del funzionamento del web moderno. API, JavaScript, WordPress, applicazioni, servizi cloud, database, sistemi di intelligenza artificiale e dati strutturati per la SEO utilizzano quotidianamente JSON.
Vediamo quindi cos’è JSON, come funziona, a cosa serve e perché è diventato così importante.
Spoiler: non serve imparare un nuovo linguaggio di programmazione. Per una volta possiamo stare tranquilli.
Cos’è JSON?
JSON è l’acronimo di JavaScript Object Notation.
È un formato testuale utilizzato per rappresentare dati strutturati in maniera semplice, leggibile e facilmente interpretabile sia dagli esseri umani sia dai software.
Un semplice documento JSON potrebbe essere:
{
"prodotto": "Olio EVO",
"prezzo": 15.90,
"disponibile": true,
"formato": "750 ml"
}Il principio alla base di JSON è estremamente semplice: le informazioni vengono organizzate principalmente attraverso coppie chiave-valore.
Ad esempio: “prezzo”: 15.90
La chiave prezzo identifica l’informazione, mentre 15.90 rappresenta il valore associato.
Fine. Nessuna magia nera. Solo dati organizzati bene. Cosa che, nel mondo dell’informatica, è già un risultato considerevole.
JSON è un linguaggio di programmazione?
No. JSON non è un linguaggio di programmazione.
È una distinzione importante perché JSON non contiene istruzioni, cicli, condizioni o funzioni. Il suo compito è rappresentare informazioni secondo una struttura precisa.
Non possiamo quindi chiedergli di eseguire operazioni complesse. JSON serve essenzialmente a descrivere, memorizzare e trasportare dati.
Possiamo considerarlo una sorta di contenitore standardizzato che permette a sistemi e linguaggi differenti di scambiarsi informazioni senza doversi necessariamente conoscere.
Ed è proprio questa semplicità ad aver contribuito enormemente alla sua diffusione.
Come è strutturato un file JSON?
JSON utilizza poche regole, ma devono essere rispettate.
Perché i computer hanno molte qualità, ma la capacità di interpretare creativamente una virgola messa male non è tra queste.
Gli oggetti
Un oggetto JSON viene racchiuso tra parentesi graffe:
{
"nome": "Mario",
"eta": 35
}Ogni proprietà è composta da una chiave e dal relativo valore.
Gli array
JSON permette anche di rappresentare elenchi di elementi attraverso gli array:
{
"servizi": [
"Web Design",
"SEO",
"E-commerce",
"Software Custom"
]
}Gli array vengono racchiusi tra parentesi quadre e possono contenere stringhe, numeri, valori booleani, altri array oppure oggetti.
Quali tipi di dati supporta?
JSON supporta un numero relativamente limitato di tipi di dati. Ed è proprio questa semplicità uno dei motivi per cui funziona così bene.
- Stringhe: testi racchiusi tra virgolette doppie;
- Numeri: interi o decimali;
- Booleani:
trueoppurefalse; - Oggetti: raccolte di coppie chiave-valore;
- Array: elenchi ordinati di valori;
- null: utilizzato per rappresentare l’assenza intenzionale di un valore.
Ad esempio:
{
"azienda": "AlphaDev",
"anni_attivita": 20,
"operativa": true,
"telefono_secondario": null,
"servizi": [
"Web",
"SEO",
"Software"
]
}Una struttura semplice, leggibile e soprattutto facilmente elaborabile da un software.
A cosa serve JSON?
JSON risolve uno dei problemi fondamentali dell’informatica moderna: far comunicare sistemi differenti.
Immaginiamo un sito web che deve chiedere a un server l’elenco dei prodotti disponibili.
Il server potrebbe rispondere:
{
"prodotti": [
{
"id": 101,
"nome": "Prodotto A",
"prezzo": 19.90
},
{
"id": 102,
"nome": "Prodotto B",
"prezzo": 24.90
}
]
}L’applicazione riceve questi dati, li interpreta e decide come visualizzarli.
Il server potrebbe essere sviluppato in PHP, il frontend potrebbe utilizzare JavaScript e un’app mobile potrebbe essere realizzata con una tecnologia completamente diversa.
A JSON interessa relativamente poco.
Lui consegna i dati, un po’ come un corriere estremamente efficiente che non sente il bisogno di sapere cosa farai con il pacco.
JSON e API: una coppia praticamente inseparabile
Uno degli utilizzi più importanti del formato JSON riguarda le API.
API significa Application Programming Interface e, semplificando molto, rappresenta un sistema attraverso il quale software differenti possono comunicare tra loro.
Quando un’applicazione interroga una REST API, molto spesso riceve una risposta in formato JSON.
Ad esempio:
{
"status": "success",
"utente": {
"id": 145,
"nome": "Mario Rossi"
}
}L’applicazione può leggere la risposta e decidere automaticamente cosa fare.
Questo meccanismo viene utilizzato continuamente da sistemi di pagamento, gestionali, CRM, e-commerce, servizi di prenotazione, applicazioni mobile, piattaforme social e servizi cloud.
JSON e WordPress
Se utilizzi WordPress, probabilmente utilizzi JSON anche senza saperlo.
WordPress dispone infatti di una REST API attraverso la quale è possibile recuperare informazioni relative a contenuti e altre risorse del sito.
Una risposta potrebbe contenere informazioni simili a queste:
{
"id": 125,
"slug": "cos-e-json",
"status": "publish",
"title": {
"rendered": "Cos'è JSON"
}
}Questo permette, ad esempio, di utilizzare WordPress non soltanto come CMS tradizionale, ma anche come backend per applicazioni esterne e architetture headless.
In pratica WordPress gestisce i contenuti, mentre un’altra applicazione decide come mostrarli.
JSON e JavaScript
Il rapporto tra JSON e JavaScript è particolarmente stretto. Non potrebbe essere altrimenti, considerando che il nome completo è proprio JavaScript Object Notation.
JavaScript mette a disposizione due strumenti fondamentali: JSON.parse() e JSON.stringify().
Convertire JSON in un oggetto JavaScript
const dati = '{"nome":"AlphaDev","attivo":true}';
const oggetto = JSON.parse(dati);
console.log(oggetto.nome);JSON.parse() converte una stringa JSON in un oggetto utilizzabile da JavaScript.
Convertire un oggetto JavaScript in JSON
const azienda = {
nome: "AlphaDev",
attivo: true
};
const json = JSON.stringify(azienda);JSON.stringify() esegue l’operazione inversa, convertendo un oggetto JavaScript in una stringa JSON.
Due funzioni apparentemente semplici che vengono utilizzate continuamente nello sviluppo web moderno.
JSON e database
JSON viene utilizzato anche nei database.
Sistemi come MySQL e PostgreSQL permettono di lavorare con dati memorizzati in strutture JSON, una soluzione che può essere utile quando alcune informazioni hanno una struttura particolarmente flessibile.
Immaginiamo, ad esempio, le caratteristiche di un prodotto:
{
"colore": "nero",
"dimensione": "XL",
"materiale": "cotone",
"personalizzabile": true
}In determinati contesti memorizzare queste informazioni come JSON può rendere l’applicazione più flessibile.
Attenzione però. Questo non significa: “Mettiamo tutto dentro JSON così non dobbiamo progettare il database.”
Quella non si chiama flessibilità. Si chiama problema rimandato alla versione futura di noi stessi. E la versione futura di noi stessi generalmente ci odierà.
JSON e SEO: cosa sono JSON-LD e i dati strutturati?
JSON ha un ruolo importante anche nella SEO.
Uno degli esempi più conosciuti è JSON-LD, acronimo di JavaScript Object Notation for Linked Data.
JSON-LD viene utilizzato per inserire nelle pagine web dati strutturati che permettono ai motori di ricerca di comprendere meglio il significato delle informazioni presenti nella pagina.
Ad esempio, possiamo descrivere un’organizzazione:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "AlphaDev",
"url": "https://www.alphadev.it"
}
</script>Il visitatore normalmente non vede queste informazioni, mentre i motori di ricerca possono utilizzarle per interpretare meglio il contenuto e le entità presenti nella pagina.
Prodotti, aziende, articoli, eventi, ricette e numerosi altri tipi di contenuto possono essere descritti attraverso vocabolari strutturati come Schema.org.
Questo non significa che inserire tre righe di JSON-LD farà improvvisamente apparire il sito al primo posto su Google.
Se qualcuno ve lo promette, controllate di avere ancora il portafoglio.
I dati strutturati sono uno strumento tecnico utile alla SEO, non una bacchetta magica.
JSON e Intelligenza Artificiale
Con la diffusione dell’Intelligenza Artificiale, JSON è diventato ancora più importante.
Molti servizi basati su modelli di AI possono ricevere o restituire informazioni strutturate, permettendo ai risultati generati di essere elaborati automaticamente da altri software.
Supponiamo di utilizzare un sistema AI per analizzare una recensione. Invece di ricevere soltanto una risposta testuale possiamo ottenere:
{
"sentiment": "positivo",
"punteggio": 8,
"problemi": [
"ritardo nella consegna"
],
"richiede_assistenza": false
}La differenza è importante.
Un normale testo è pensato principalmente per essere letto da una persona. Una risposta JSON può invece essere interpretata automaticamente da un software, inserita in un database, inviata a un’altra API oppure utilizzata all’interno di un workflow.
Ed è qui che JSON diventa particolarmente interessante anche nel campo dell’automazione e dell’AI.
JSON nei file di configurazione
JSON viene spesso utilizzato anche per configurare software e progetti.
Nel mondo JavaScript, ad esempio, troviamo il celebre file package.json, utilizzato per descrivere un progetto, le sue dipendenze e diversi parametri di configurazione.
{
"name": "alphadev-project",
"version": "1.0.0",
"dependencies": {
"express": "^5.0.0"
}
}Modificare questi file senza sapere cosa si sta facendo è tecnicamente possibile.
Esattamente come è tecnicamente possibile aprire il cofano dell’auto e iniziare a scollegare tubi per vedere cosa succede.
JSON o XML: quali sono le differenze?
Prima della diffusione massiccia di JSON, uno dei formati più utilizzati per lo scambio dei dati era XML.
Un documento XML potrebbe apparire così:
<azienda>
<nome>AlphaDev</nome>
<attiva>true</attiva>
</azienda>L’equivalente JSON è decisamente più compatto:
{
"nome": "AlphaDev",
"attiva": true
}JSON tende a essere più leggero e immediato da leggere, soprattutto nelle applicazioni web.
Questo non significa però che XML sia morto. Continua a essere utilizzato in numerosi sistemi, protocolli, documenti e integrazioni.
In informatica bisogna sempre diffidare delle frasi: “Questa tecnologia è morta.”
Di solito significa che da qualche parte esiste ancora un server del 2008 che la utilizza e che nessuno osa spegnere.
Un esempio JSON più complesso
Vediamo una struttura leggermente più articolata:
{
"azienda": {
"nome": "AlphaDev",
"settore": "Digital Agency",
"servizi": [
{
"nome": "Sviluppo Web",
"attivo": true
},
{
"nome": "SEO",
"attivo": true
},
{
"nome": "Software Custom",
"attivo": true
}
]
}
}In questo caso abbiamo un oggetto principale, un oggetto azienda, diverse proprietà, un array servizi e diversi oggetti contenuti nell’array.
È proprio questa possibilità di annidare strutture differenti a rendere JSON estremamente versatile.
Quali sono gli errori JSON più comuni?
JSON è semplice. Ma semplice non significa impossibile da rompere.
Consideriamo questo esempio:
{
"nome": "AlphaDev",
"attivo": true,
}Quella virgola dopo true rende il JSON non valido.
Altro classico:
{
nome: "AlphaDev"
}Anche questo non è JSON valido: le chiavi devono essere racchiuse tra virgolette doppie.
E poi abbiamo:
{
"attivo": True
}No. Il valore booleano corretto è: true con la minuscola. Il parser JSON non apprezza l’interpretazione personale delle regole.
Come verificare se un JSON è valido?
Quando si lavora con documenti complessi è possibile utilizzare un JSON Validator oppure un editor di codice dotato di controllo della sintassi.
Questi strumenti permettono di individuare rapidamente parentesi mancanti, virgole errate, virgolette non chiuse, strutture non valide ed errori di sintassi.
Perché cercare manualmente una virgola sbagliata dentro 2.000 righe di JSON è certamente possibile.
Ma nella vita esistono già abbastanza motivi per soffrire.
Perché JSON è importante per il web moderno?
JSON non è una tecnologia particolarmente appariscente. Non genera animazioni, non crea interfacce spettacolari e non trasforma automaticamente un sito mediocre in un progetto digitale fantastico.
E difficilmente vedrete qualcuno pubblicare sui social: “Finalmente ho serializzato correttamente il mio oggetto JSON”
Eppure JSON lavora silenziosamente dietro una quantità enorme di servizi digitali. Ogni volta che un’applicazione recupera informazioni da un server, un sito interroga un’API, un gestionale comunica con un altro software, WordPress espone contenuti tramite REST API, un sistema AI restituisce dati strutturati o un sito comunica informazioni ai motori di ricerca, è molto probabile che da qualche parte ci sia JSON.
JSON: semplice fuori, fondamentale dentro
La forza di JSON non deriva dalla sua complessità. Deriva esattamente dal contrario.
È semplice, leggero, leggibile, interoperabile e supportato da praticamente tutti i principali linguaggi di programmazione.
Ha permesso a linguaggi, piattaforme e servizi differenti di utilizzare una forma comune per rappresentare e scambiarsi informazioni.
Ed è uno di quei concetti che vale la pena conoscere anche se non si è programmatori.
Perché capire cos’è JSON e come funziona significa iniziare a capire come comunicano realmente i servizi digitali moderni.
La prossima volta che aprirete un file e troverete qualcosa come:
{
"status": "error",
"message": "Something went wrong"
}almeno saprete due cose.
La prima: state guardando JSON. La seconda: qualcosa è andato storto.
Per capire cosa, invece, probabilmente servirà un programmatore.
E improvvisamente torniamo utili.





