Format
Com es codifiquen les dades en text perquè qualsevol programa, en qualsevol llenguatge, les pugui llegir.
Introducció
Dins d’un programa, les dades viuen a la memòria.
Un diccionari de Python i un Map de Kotlin no s’assemblen gens per dins, però tots dos guarden parelles clau-valor.
Quan les dades han de sortir del programa —desar-les en un fitxer, enviar-les per la xarxa— aquesta representació interna no serveix.
Cal codificar-les en text: una seqüència de caràcters que qualsevol programa pugui tornar a llegir.
Això és un format de serialització.
Aquí en tens quatre, i cadascun va néixer per resoldre un problema diferent.
JSON és el format d’intercanvi més utilitzat avui.
Es basa en una idea molt simple: qualsevol estructura de dades es pot representar amb diccionaris i llistes, de forma recursiva.
JSON Schema hi afegeix el que li falta: un document JSON no diu enlloc quins camps són obligatoris ni quins valors s’hi accepten.
Un esquema ho declara, i així dos programes es poden posar d’acord sobre quines dades s’intercanvien.
XML és més antic i molt més verbós.
Encara el trobaràs a molts sistemes, i és el format dels catàlegs de dades obertes de les administracions.
YAML no està pensat per a programes, sinó per a persones.
És el format dels fitxers de configuració que escriuràs a mà: Docker Compose, GitHub Actions, Ansible.
JSON
JSON
JSON és un format de text que permet representar qualsevol estructura de dades.
JSON Schema
JSON Schema allows you to define a strict structure for data transmitted between communicating applications.