Qu'est-ce que JSON?

Voici la traduction de la définition du site officiel:

JSON (JavaScript Object Notation) est un format d'échange de donnée caractérisé par un faible poids de fichier. Il est facile d'accès, tant pour la lecture que pour l'écriture, pour les développeurs. Alors que les ordinateurs bénéficient également d'aisances quant à son utilisation et sa génération. Ce format est basé sur sous-ensemble du JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON est un format texte qui est totalement indépendant d'un langage en particulier. Cependant, ils comportent des conventions qui seront familièrent aux développeurs de la famille des C (C, C++, C, Java, JavaScript, Perl, Python, etc.). Toutes ces caractéristiques font de JSON un format idéal pour l'interopérabilité des données.

Soulignons entre autres que JSON a beaucoup été mis à l'honneur ces derniers temps grâce à l'explosion d'Ajax. Une solution de transfert de données rapide en processing et possédant un coup faible en terme de bande passante devenant alors une nécessité (voir une obligation).

Un remplacant du XML (The Fat-Free Alternative) ?

En effet, l'amalgame "Echange de données / XML semble trivial.

La conclusion du JDN Développeurs dans son article consacré à JSON, se résume plus ou moins à dire que le XML conserve ses avantages propres (à l'instar de son extensibilité) alors que JSON offre une nouvelle alternative convenant parfaitement à des applications internets nécessitant des transferts légers (sans être péjoratif).

Alors que le site officiel se montre bien entendu un peu plus critique (partial?) et surtout plus approfondi dans sa comparaison. Ce prétendu avantage de l'extensibilité est par exemple mis à mal par le simple fait que JSON n'a pas à l'être. Il ne s'agit aucunement d'un document markup language.

J'en retiens que la principale distinction à faire est justement que JSON n'est pas un langage balisé. De ce fait, il est fait pour manipuler des données (avec tout ce que cela implique) et non des documents comme en est capable XML ( XML is document-oriented. JSON is data-oriented.). Au développeur de faire le bon choix en fonction de son application.

Use the right tool for the right job.

Exemples

Voir le site.

Liens connexes
  • neolao - JSON: Ne manquez pas de lire les commentaires, surtout le passage sur la librairie Eden écrite par Zwetan. Qui comme il tient à préciser: C'est proche de json mais ce n'est pas comme json ni même inspiré de json.