Poznaj JSON

Konfigurując mechanizmy automatyzujące codzienne czynności, bardzo szybko spotkasz się z koniecznością przekazywania danych pomiędzy modułami, pomiędzy aplikacjami, czy pomiędzy Twoją aplikacją a interfejsem API. Zmienne systemu operacyjnego do takich zadań nie wystarczą, dlatego musisz skorzystać z jednej z dostępnych struktur danych. Znajomość dwóch z nich jest wręcz niezbędna – są to XML i JSON. Osobiście preferuję korzystanie z tego drugiego, gdzie tylko jest to możliwe. Przede wszystkim ze względu na lepszą czytelność informacji i prostotę użycia.

Typy danych w JSON

Nazwa JSON to skrót od JavaScript Object Notation. Choć nazwa sugeruje nam związek z konkretnym językiem programowania, to tak naprawdę jest to niezależny format służący do zapisu danych. Pliki z danymi zapisanymi w tym formacie mają rozszerzenie .json, jest to także zarejestrowany internetowy typ danych identyfikowanych jako application/json.

Podstawowe typy danych to:

  • Number – liczba zapisana w notacji dziesiętnej lub wykładniczej
  • String – sekwencja zera lub więcej znaków Unicode zapisana w cudzysłowie
  • Boolean – binarna wartość oznaczająca false lub true
  • Array – uporządkowana lista składająca się z zera lub większej liczby wartości dowolnego typu, zapisujemy ją w nawiasach kwadratowych
  • Object – nieuporządkowany zbiór typu nazwa-wartość
  • Null – wartość pusta, czyli null.

Spacje, tabulacje, znaki końca linii czy powrotu karetki (carriage return) są przez parsery ignorowane. Niemniej ich stosowanie w zapisie jest niezbędne, aby zapewnić jego czytelność. A to właśnie czytelność i przejrzystość struktury obiektów są jedną z największych jego zalet. Największą zaś moim zdaniem wadą jest brak składni służących do wstawiania komentarzy.

Przykład

Poniżej znajduje się przykładowa struktura zawierająca wszystkie opisane powyżej elementy.

{
  "hostname": "nazwa.hosta.lan",
  "age": 2,
  "owner": null,
  "active": true,
  "interfaces": [
    {
      "name": "eth0",
      "address": "172.16.16.1"
    },
    {
      "name": "eth1",
      "address": "10.0.0.1"
    }
  ]
}

Struktura obiektu JSON jest bardzo czytelna, co więcej łatwo ja stworzyć czy przetworzyć w sposób programowy.

Jak tworzyć i przetwarzać obiekty JSON?

Jeżeli tworzysz obiekty manualnie, przyda Ci się do tego dobry edytor. Jeżeli tak jak ja jako swoje środowisko IDE, w którym programujesz, wybrałeś pyCharm, to edycja i walidacja struktur jest w nim już wbudowana. Podobne funkcjonalności znajdzie w pozostałych produktach, o których wspomniałem w artykule. W Atom prawdopodobnie będziesz musiał zainstalować dodatkowe wtyczki. Możesz także skorzystać z edytorów online takich jak JSON Editor Online. W sieci znajdziesz też wiele stron pozwalających na walidację poprawności struktur JSON. Jedną z nich jest JSON Formatter & Validator

Jeżeli piszesz aplikację w języku Python, to znajdziesz wiele bibliotek przeznaczonych do parsowania i tworzenia struktur JSON. Ja najczęściej korzystam z systemowej biblioteki json, natomiast do przejrzystego wyświetlania struktury na ekranie biblioteki pprint. W repozytorium bibliotek języka Python znajdziesz wiele dodatkowych bibliotek, z których możesz skorzystać.


Subscribe
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

0 komentarzy
Inline Feedbacks
View all comments

ZdradziĆ Ci sekretY udanego projektu automatyzacji?

(link otwiera się w nowym oknie)