Protocol Buffers
Protocol Buffers | |
---|---|
Basisdaten
| |
Entwickler | Google Inc. |
Betriebssystem | plattformunabhängig |
Programmiersprache | C++, Java, Python |
Kategorie | Serialisierungsformat und Bibliothek, IDL-Compiler |
Lizenz | in Teilen BSD-Lizenz |
developers.google.com/protocol-buffers |
Protocol Buffers (protobuf) ist ein Datenformat zur Serialisierung mit einer Schnittstellen-Beschreibungssprache. Es wurde von Google Inc. entwickelt und teilweise unter einer 3-Klausel-BSD-Lizenz veröffentlicht.[1] Für eine Vielzahl an Programmiersprachen wird eine offizielle Implementierung von Google als freie Software unter Apache-Lizenz 2.0 bereitgestellt. Zu den offiziell unterstützten Programmiersprachen zählen unter anderem C#, C++, Go, Objective-C, Java, Python und Ruby. Viele weitere Programmiersprachen wie beispielsweise C oder Swift werden durch Projekte von Dritten unterstützt.[2]
Hauptsächliche Entwurfskriterien der Protocol Buffers sind Einfachheit und Performance. Daher ist es als ein Binärformat konzipiert im Gegensatz zu XML, welches auf ein textuelles Format setzt.
Protocol Buffers wurden von 2001 bis 2008 intern bei Google entwickelt.[3] Seit 2008 sind der Compiler und die Bibliotheken unter einer Open-Source-Lizenz verfügbar, und man kann die Weiterentwicklung durch Google öffentlich verfolgen. Google verwendet Protocol Buffers zur Speicherung und zum Austausch strukturierter Daten und als Basis für ein RPC-System zur intermaschinellen Kommunikation.[4]
gRPC nutzt Protocol Buffers als Beschreibungssprache für RPC-Schnittstellen und als Format für die Client-Server-Kommunikation.
Siehe auch
- Abstract Syntax Notation One (ASN.1)
Weblinks
Einzelnachweise
- ↑ Marc Teufel: "Google Protocol Buffers: Mark-Set-Go!" Abgerufen am 28. Dezember 2016.
- ↑ "Third-Party Add-ons for Protocol Buffers: Programming Languages". (Nicht mehr online verfügbar.) Ehemals im Original; abgerufen am 13. Mai 2017. (Seite nicht mehr abrufbar, Suche in Webarchiven)
- ↑ Sean Michael Kerner: A Look at Google's Open Source Protocol Buffer. Abgerufen am 27. April 2011.
- ↑ Kenton Varda: A response to Steve Vinoski. Abgerufen am 14. Juli 2008.