Che cos'è JSON?

JSON è l'acronimo di JavaScript Object Notation, è un formato leggero per lo scambio e l'archiviazione di dati. Il formato di archiviazione dei dati viene utilizzato principalmente nelle chiamate API REST (richiesta e risposta REST) ​​e nei database NoSQL come MongoDB. La notazione oggetto JavaScript come formato è molto semplice, auto-descrittiva e intuitiva.

Definizione

È lo stesso del formato in cui vengono creati gli oggetti JavaScript, ma in JSON gli oggetti sono piuttosto solo sms. La lettura e la generazione della notazione oggetto JavaScript può essere eseguita utilizzando qualsiasi linguaggio di programmazione. Potremmo dover seguire le seguenti regole di sintassi:

  1. I dati sono sempre in coppie chiave / valore.
  2. Ogni oggetto dati è separato da una virgola.
  3. Gli oggetti sono racchiusi tra parentesi graffe (la parentesi di fiore come questa '()')
  4. Gli array sono tenuti tra parentesi quadre.

Oggetto JSON

Un oggetto tipico è il seguente

(
“Name”: “Alex”,
“Occupation”: “Teacher”,
“Places visited”: (“San Francisco”, “California”, “Houston”) )

Negli esempi precedenti, "Nome", "Occupazione", "Luoghi visitati" sono le chiavi e "Alex", "Insegnante" e l'array ("San Francisco", "California", "Houston") sono i valori di le rispettive chiavi e tutti i dati racchiusi tra parentesi quadre costituiscono un oggetto notazione oggetto JavaScript. I valori possono essere una stringa, un altro oggetto, un valore booleano, null, un numero.
Gli oggetti possono anche essere nidificati e avere anche la forma di array.

Esempi:

1. Oggetti nidificati

(
“Role”: “Student”,
“Name”: (
“First name”: “Alex”,
“Last name”: “Hill”
)
)

Le parentesi graffe esterne formano l'oggetto JSON primario che si annida in un altro oggetto JSON con la chiave "Nome" seguita dai dati nelle parentesi graffe interne. Quindi, vediamo l'array di oggetti.

2. Una matrice di oggetti

(
“Grade”: 6,
“Student names”: (
(
“First name”: “Alex”,
“Last name”: “Hill”
),
(
“First name”: “Neal”,
“Last name”: “Hunter”
),
(
“First name”: “Peter”,
“Last name”: “Jones”
)
) )

Come puoi vedere, le parentesi graffe esterne formano l'oggetto dati JSON primario e c'è una coppia di parentesi quadre che racchiude un insieme di oggetti che è l'array di oggetti JSON.

3. Tipi di dati

I valori devono avere uno dei seguenti tipi di dati.

  • Stringhe:

(“name”: “Johnny”)

  • Numero:

(“age”: 21)

  • Oggetto:

(
employee”: (“name”: “John”, “age”: 221)
)

Nota : anche gli oggetti negli oggetti JSON nidificati devono seguire le stesse regole di sintassi di un normale oggetto JSON.

  • booleano:

(“sale”: true)

4. Analisi JSON

Consideriamo Python come il linguaggio di programmazione di esempio e vediamo come gestire gli oggetti dati.

1. import json
# json è il modulo in Python per gestire i suoi oggetti dati

2. string_a = “(“ name ”:“ Alex ”, “ age ”:“ 22 ”, “ occupazione ”:“ Insegnante ”)”
# lasciami spiegare l'esempio del formato stringa con le regole di sintassi

3. json_object = json.loads (string_a)
# ora json_object ha string_a come oggetto JSON e i valori chiave possono essere riferiti come segue

print ("Il nome è", json_object ("nome"))
print (json_object ("name", "'s age is", json_object (' age ')))

Pertanto, nell'analisi JSON utilizzando Python, gli oggetti JSON assumono la forma di un dizionario e le chiavi verranno indicate nell'indice come indicato nell'esempio precedente.

Ora vediamo come possiamo analizzare gli oggetti JSON da un file in Python

1. import json
# json è il modulo in Python per gestire i suoi oggetti

2. file_handler = open ('json_data_file.json', 'r')
# open è la funzione per aprire un file in Python e i file JSON sono memorizzati con l'estensione
# .json che in questo esempio è aperto nella modalità di lettura 'r'

3. json_object = json.load (file_handler)
# json.load () è la funzione che accetta il gestore di file del file json e legge i suoi dati
# oggetti dal file
print ("Il nome è", json_object ("nome"))
print (json_object ("name", "'s age is", json_object (' age ')))

Nota: è possibile leggere il file, estrarre il contenuto come stringa e utilizzare il metodo json.loads () per ottenere l'oggetto json o utilizzare direttamente il metodo load per estrarre il gestore di file come parametro

Scambio di oggetti dati

Quasi tutti i linguaggi di programmazione sono in grado di generare e gestire dizionari o hash o array associativi. Pertanto, i dati che devono essere scambiati tra i client e i server devono essere convertiti in uno di questi moduli a seconda del linguaggio di programmazione utilizzato.

JSON vs XML

Tradizionalmente, il protocollo utilizzato per scambiare dati tra il client e il server era SOAP (Simple Object Access Protocol) che utilizzava XML (Extensible Markup Language). Con l'introduzione del REST (Representational State Protocol) l'uso della JavaScript Object Notation è diventato molto famoso.

Ecco alcune somiglianze tra di loro

  1. Entrambi sono intuitivi e facili da leggere.
  2. Entrambi possono essere nidificati e gerarchici.
  3. Entrambi possono essere analizzati utilizzando un'ampia varietà di lingue.
  4. Entrambi vengono scambiati tramite richieste Web per il trasferimento di dati.

Ecco alcune differenze tra loro

  1. Non ha un formato tag.
  2. È l'archiviazione ottimale in quanto è relativamente più breve di XML.
  3. È più veloce da leggere e scrivere.
  4. Può usare array mentre non è facile in XML.

svantaggi

Mentre abbiamo visto i vantaggi, non è privo di svantaggi. Di seguito sono riportati gli svantaggi:

  1. Non è completamente sicuro.
  2. È limitato in termini di tipi di dati supportati.

In che modo la conoscenza di JSON ti aiuterà nella tua carriera?

È un formato di dati che viene utilizzato per scambiare informazioni tra client e server. Immagina, se potessi sviluppare uno schema ottimizzato per la rappresentazione dei dati che utilizza un minor numero di dati per scambiare dati di grandi dimensioni, sarebbe una cosa grandiosa. Il mondo intero si sta muovendo verso i servizi API RESTful. Ecco perché avere molto a che fare con questa lingua ti aiuterà a trovare fantastici servizi API.

Conclusione

È uno dei fantastici formati di dati per accedere, archiviare e comprendere i dati. Se stai cercando qualcosa che sia veloce, leggero per lo scambio di dati, puoi sempre aspettarti di utilizzare JavaScript Object Notation.

Articoli consigliati

Questa è stata una guida a What is JSON. Qui abbiamo discusso del funzionamento di JSON con l'aiuto di esempi e come e dove può aiutare nella crescita della carriera. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Che cos'è JavaScript?
  2. Cos'è l'array PHP?
  3. Che cos'è SAS?
  4. Che cos'è Design Pattern in Java?