Google lance une alternative à XML

Par:
francoistonic

jeu, 10/07/2008 - 12:04

L’éditeur vient de mettre en open source un projet interne : Protocol Buffers. Il s’agit d’un langage pour décrire, encoder les données. Ce format était jusqu’à présent utilisé en interne pour les applications et données Google. Protocol Buffers se veut rapide, extensible, efficace, avec une sérialisation automatique des données. Il est comme XML mais, dixit Google, plus rapide, plus léger, plus simple à utiliser, à coder. Basiquement, on définit comment on veut que la donnée soit structurée puis on peut utiliser cela en lecture, écriture (via un code à écrire). Surtout, il permet d’utiliser diverses méthodes pour transporter la donnée et employer différents langages pour l’utiliser. On peut même mettre à jour la donnée sans changer les applications ou les données déjà déployées.

On passe par des fichiers .proto. Chaque message Protocol Buffer est un petit « enregistrement logique » de l’information contenant des séries de valeurs de noms. Il indique clairement la structure, les champs, le type de données, etc. Ensuite, une fois le message défini, on exécute le compilateur adapté au langage de son application, ainsi, il génère le code d’accès aux données pour le langage voulu.

Actuellement, Protocol Buffers s’utilise uniquement en C++, Java, Python. Le support de Perl est prévu. Par contre, rien (pas encore du moins) pour PHP, Ruby, .Net, etc. Protocol Buffers sera-t-il le concurrent de XML, oui sans doute mais dans l’état actuel, il est bien trop tôt pour le dire. Les éditeurs et développeurs ont déjà beaucoup investi de temps et d’argent pour supporter XML. Protocol Buffers viendra éventuellement en complément mais il faudra attendre la réaction des communautés ouvertes et des éditeurs. Et il n’est pas certain que dans l’immédiat, ce nouveau langage puisse rencontrer un succès aussi important que XML.

Cependant, si XML n’évolue pas dans plus de simplicité, de performances, le langage aura un problème car depuis sa naissance, il est handicapé par sa lourdeur.

Site : http://code.google.com/apis/protocolbuffers/