Protocole de tampons ne sera pas seulement aider à réduire la taille du transfert, mais aussi d'améliorer le temps qu'il faut pour encoder et envoyer ainsi.
Développé à Google pour aider à améliorer les transferts de données, Protocol Buffers est idéal pour tous les protocoles basés sur RPC et formats de fichiers adjacents.
Actuellement, la bibliothèque est considéré comme le meilleur dans l'entreprise, est encore largement utilisé dans la production de Google et de nombreux produits d'autres sociétés.
Le paquet comprend des modules pour C ++, Java et applications Python.
Ports d'Protocol Buffers tiers ont été créés par des développeurs pour des langues comme ActionScript, C, C #, Clojure, Common Lisp, D, Dart, Erlang, Go, JavaScript, Lua, MATLAB, OCaml, Objective-C, PHP, Perl, R, Ruby, Scala, Visual Basic, et beaucoup d'autres plus
Ce qui est nouveau dans cette version:.
- C ++:
- Correction du problème de frendship pour les vieux compilateurs pour rendre la bibliothèque maintenant gcc 3 compatible à nouveau.
- vcprojects fixes / extract_includes.bat pour extraire compilateur / plugin.h.
- Java:
- Suppression des usages de JDK 1.6 ne présente que pour rendre la bibliothèque maintenant JDK 1.5 compatible à nouveau.
- Correction d'un bug sur les valeurs d'énumération négatifs.
- serialVersionUID est maintenant défini dans les messages générés pour java sérialisation.
- protoc fixe à utiliser java.lang.Object, ce qui rend & quot; objet & quot; maintenant un nom de message valide à nouveau.
- Python:
- Expérimental implémentation C ++ exige maintenant bibliothèque C ++ protobuf installé.
- Voir le fichier README.txt dans le répertoire de python pour plus de détails.
Ce qui est nouveau dans la version 2.3.0:
- C ++:
- Divers vitesse et codes optimisations de taille.
- DynamicMessageFactory est maintenant complètement thread-safe.
- méthode message :: Utf8DebugString () est comme DebugString (), mais évite échapper octets UTF-8.
- Compilé en types de messages peuvent maintenant contenir des extensions dynamiques, grâce à l'utilisation de CodedInputStream :: SetExtensionRegistry ().
- bibliothèques Maintenant compile partagées (DLL) par défaut sur Cygwin et MinGW, pour correspondre à d'autres plates-formes. Utilisez --disable-shared pour éviter cela.
- Java:
- parseDelimitedFrom () et mergeDelimitedFrom () détectent maintenant EOF et return false / null au lieu de lancer une exception.
- Correction de quelques bugs de commande d'initialisation.
- Corrections pour OpenJDK 7.
- Python:
- 10-25 fois plus rapide que la 2.2.0, encore pur-Python.
- Appeler une méthode mutation sur un sous-message de instancie toujours le message dans son parent, même si la méthode mutationniste ne fait muter rien (par exemple, l'analyse d'une chaîne vide).
- descripteurs élargi un peu.
Commentaires non trouvées