Czym jest JSON?

readTime

5 min

Czym jest JSON?

Jeśli zaczynasz programować lub pracujesz z aplikacjami internetowymi, na pewno natknąłeś się na termin JSON.

Ale czym jest JSON i dlaczego jest tak ważny w świecie aplikacji webowych?

JSON (skrót od JavaScript Object Notation) to lekki format wymiany danych, który cieszy się ogromną popularnością dzięki swojej prostocie, czytelności i wszechstronności.

W tym artykule wytłumaczę Ci wszystko, co musisz wiedzieć o formacie JSON, jak go używać, oraz dlaczego jest on tak szeroko stosowany w nowoczesnych aplikacjach.

Czym jest JSON?

JSON to tekstowy format do przechowywania i wymiany danych między serwerem a klientem, aplikacjami lub różnymi systemami.

Został stworzony na potrzeby języka JavaScript, ale dziś jest szeroko stosowany w wielu językach programowania, takich jak Python, Java, PHP, czy Perl.

JSON stanowi nadzbiór składni obiektów w języku JavaScript, co czyni go naturalnym wyborem dla programistów pracujących z aplikacjami webowymi.

Jego główną zaletą jest prosta struktura, którą łatwo zrozumieć zarówno dla programistów, jak i dla ludzi, którzy nie mają zbyt dużego doświadczenia w programowaniu.

Dzięki składni opartej na kluczach i wartościach, JSON pozwala łatwo przechowywać i przesyłać dane pomiędzy różnymi platformami oraz aplikacjami.

Przykład JSON:

Oto prosty przykład pliku JSON:

json
{
  "name": "Jan Kowalski",
  "age": 30,
  "city": "Warszawa",
  "isStudent": false
}

W tym przykładzie mamy klucze: name, age, city i isStudent, a ich odpowiadające wartości to: "Jan Kowalski", 30, "Warszawa" oraz false. To uporządkowana lista wartości, gdzie każdy klucz jest ciągiem znaków zapisanym w cudzysłowie, a wartość może być ciągiem znaków, liczbą, tablicą, czy wartością logiczną, jak true lub null.

JSON a XML – Różnice

Przed erą JSON, dane były często przesyłane w formacie XML (Extensible Markup Language).

Jednak XML jest bardziej skomplikowany, wymaga większej ilości kodu i jest trudniejszy do przetwarzania przez programistów.

JSON natomiast jest prostszy i bardziej zwięzły, co sprawia, że jest czytelny zarówno dla ludzi, jak i maszyn.

Oto porównanie JSON i XML na przykładzie tych samych danych:

JSON:

json
{
  "name": "Jan Kowalski"
}

XML:

xml
<name>Jan Kowalski</name>

Jak widać, XML wymaga znaczników takich jak <name>, co zwiększa rozmiar pliku i utrudnia pracę z danymi. W przeciwieństwie do tego, format JSON jest bardziej kompaktowy i łatwiejszy do manipulacji w JavaScript.

Składnia JSON

Składnia JSON jest prosta i opiera się na kilku zasadach. Oto najważniejsze elementy:

  1. Obiekty są otoczone klamrami {}.
  2. Tablice są otoczone nawiasami kwadratowymi [].
  3. Każdy element to klucz i wartość oddzielone dwukropkiem (:).
  4. Ciągi znaków i klucze muszą być otoczone cudzysłowem (").
  5. Elementy są oddzielone od siebie przecinkami.

Przykład:

json
{
  "name": "Jan Kowalski",
  "age": 30,
  "languages": ["polski", "angielski"],
  "married": true
}

W powyższym przykładzie mamy obiekt, który zawiera klucz languages, a jego wartość to tablica z językami. Takie struktury mogą być złożone, pozwalając na przechowywanie złożonych modeli danych.

Jak używamy JSON-a?

JSON jest wszechstronny i można go używać w wielu sytuacjach, zarówno w aplikacjach webowych, jak i mobilnych.

Przykłady jego zastosowania obejmują:

  1. Przechowywanie danych tymczasowych w aplikacjach przeglądarkowych.
  2. Przesyłanie danych między aplikacjami za pomocą API.
  3. Konfiguracja aplikacji, gdzie dane konfiguracyjne są zapisane w plikach JSON.
  4. Serializacja i deserializacja danych w różnych systemach i językach programowania.
  5. AJAX (Asynchronous JavaScript and XML) – technologia pozwalająca na pobieranie danych z serwera w tle bez odświeżania strony. Dane JSON są tu często wykorzystywane do szybkiej wymiany informacji.

Przykład w JavaScript

W JavaScript, możemy łatwo manipulować danymi JSON za pomocą funkcji takich jak JSON.parse() i JSON.stringify().

  • JSON.parse(): Przekształca ciąg znaków JSON w obiekt JavaScript.
  • JSON.stringify(): Przekształca obiekt JSON w ciąg znaków JSON, co pozwala na przesyłanie go np. do serwera.

Przykład:

javascript
const jsonString = '{"name": "Jan Kowalski", "age": 30}';
const user = JSON.parse(jsonString);

console.log(user.name); // Wyświetli: Jan Kowalski

Tutaj przekształcamy ciąg JSON na obiekt i uzyskujemy dostęp do zmiennych własnych jak name czy age.

Typy danych w JSON

JSON obsługuje kilka typów danych, co czyni go uniwersalnym w różnych językach programowania:

  1. Stringi (ciągi znaków) – tekst otoczony cudzysłowem.
  2. Liczby – liczby całkowite i zmiennoprzecinkowe.
  3. Tablice – uporządkowana lista wartości.
  4. Obiekty – zbiory par klucz-wartość.
  5. Wartości logiczne – true lub false.
  6. Null – wartość pusta.

Dzięki tej elastyczności, JSON może być używany do przechowywania i wymiany danych w różnych typach danych.

JSON w porównaniu do innych formatów danych

W kontekście formatu wymiany danych, JSON jest jednym z najczęściej używanych formatów.

W porównaniu do innych, takich jak XML czy YAML, JSON oferuje optymalną równowagę między czytelnością dla ludzi a wydajnością w przesyłaniu danych.

Oto krótka lista dla zobrazowania różnic:

  • XML: Używa znaczników, co czyni go bardziej skomplikowanym, ale jest mocno typowany i pozwala na bardziej formalną strukturę danych.

  • YAML: Jest bardziej czytelny dla ludzi, ale nie jest tak powszechnie używany w interfejsach API jak JSON.

Plik JSON w aplikacjach

Pliki JSON mogą być wykorzystywane w różnych celach w aplikacjach.

Są one świetnym narzędziem do przechowywania konfiguracji, a także do pracy z danymi po stronie klienta, np. przy użyciu AJAX.

JSON jest również wykorzystywany w bazach danych, takich jak MongoDB, gdzie dane są zapisywane w formacie BSON (binarny JSON).

Dlaczego JSON cieszy się popularnością?

Popularność JSON nie jest przypadkowa.

Jego lekka struktura oraz łatwość użycia w różnych językach programowania sprawiają, że jest niezastąpionym narzędziem do wymiany danych.

JSON cieszy się również popularnością dzięki swojej prostocie i kompatybilności z większością nowoczesnych technologii webowych.

Możesz używać JSON-a do przechowywania i wymiany danych między różnymi platformami, co sprawia, że jest idealny do współczesnych API.

Podsumowanie

JSON to lekki i czytelny format wymiany danych, który jest szeroko stosowany w aplikacjach webowych i mobilnych.

Dzięki swojej prostocie, wszechstronności oraz szerokiej kompatybilności z różnymi technologiami, JSON stał się standardem przechowywania i wymiany danych w dzisiejszym świecie.

Jeśli jesteś początkującym programistą, warto nauczyć się pracy z JSON-em, ponieważ spotkasz się z nim w niemal każdej aplikacji.

JSON to nie tylko łatwy do zrozumienia format, ale także potężne narzędzie, które znacząco ułatwia wymianę informacji pomiędzy klientem a serwerem oraz różnymi systemami.

authorImg

Witek Pruchnicki

Z pasją dzielę się wiedzą o programowaniu i nie tylko na różne sposoby