VT2020-Jsonnet-Fiche

Jsonnet, mot valise de JSON et sonnet, est un langage de création de modèle de données (data templating language en anglais) spécialisé pour le format de données JSON.

=Abstract= ''Jsonnet is a data templating language designed primarily for configuring complex systems. The standard use case is integrating multiple services which do not know about each other. Writing the configuration for each independently would result in massive duplication and most likely would be difficult to maintain. Jsonnet allows you to specify the configuration on your terms and programmatically set up all individual services.'' - Jsonnet Official Website

=Synthèse=

Histoire
Jsonnet, prononcé “jay sonnet” en anglais est un projet ayant vu le jour début 2014 et dont la première version fut lancée le 6 août de la même année.

La conception de Jsonnet est influencée par plusieurs langages de configuration internes à Google. Jsonnet est sous-licence Apache 2.0.

Objectifs Initiaux
JSON est devenu la norme de facto pour la communication de données structurées, tant entre les machines qu'à la frontière entre l'homme et la machine. Toutefois, en grande quantité JSON peut être difficile à gérer pour les humains, en particulier lorsque la duplication doit être maintenue en synchronisation entre les différentes parties de la structure des données. Ces problèmes étaient donc manuellement réglés en écrivant des scripts qui génèrent le JSON. Généralement, ces scripts sont écrits dans des langages de programmation généraux comme Python. Cependant, la maintenance de ces scripts peut être non triviale, en particulier pour les personnes qui ne sont pas familières avec le code de génération.

L'objectif de Jsonnet est donc de régler ses problèmes en créant un langage spécialisé guidé des critères tels que : la familiarité d’écriture, celle-ci devait être proche du JSON la modularité du code le fait d’être puissant mais simple : que les problèmes triviaux le reste mais que l’on puisse gérer des problèmes complexes la rigueur formelle : avoir une spécification faisant autorité

En 2020
Le 22 mai 2020 Jsonnet lance la version v0.16.0. Pour plus d’informations sur les différentes versions voir le GitHub du projet.

Caractéristiques de Jsonnet
Jsonnet est un data templating language, autrement dit un langage qui permet aux développeurs de prendre des données et de les insérer dans un format structuré, dédié au format JSON. Jsonnet est une extension de JSON, à partir d’un fichier .jsonnet l’utilisateur va pouvoir générer des fichiers au format JSON. En conséquence, tout fichier JSON valide est un fichier Jsonnet valide.



=Veille Technologique=
 * Année : VT2020
 * Sujet : Jsonnet
 * Slides : Slides
 * Auteurs : User:Alexandra.Chaton