Protocol Buffers
- 27.3 (2024年7月31日;穩定版本)[1]
![編輯維基數據鏈接](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png)
- github
.com /protocolbuffers /protobuf
![編輯維基數據鏈接](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png)
Protocol Buffers(简称:ProtoBuf)是一種开源跨平台的序列化資料結構的协议。其對於儲存資料或在网络上進行通訊的程式是很有用的。這個方法包含一個接口描述語言,描述一些資料結構,並提供程式工具根據這些描述產生程式碼,这些代码将用来生成或解析代表这些数据结构的字节流。
概览
Google最初开发了Protocol Buffers用于内部使用。Protocol Buffers的设计目标是简单和性能。特别地,它被设计地与XML相比更小且更快。
Protocol Buffers在Google内被广泛用来存储和交换各种类型的结构化数据。在Google,它被当作一个RPC系统的基础,并被用于几乎所有的跨服务器通信。
Protocol Buffers和Apache Thrift和Ion等协议很相似,同时也提供了一个RPC协议栈gRPC来给上层服务使用。
語言支持
proto2提供一個程式產生器,支援C++、Java和Python。[2]
第三方實作支援JavaScript。[3]
proto3提供一個程式產生器,支援C++、Java (包含JavaNano)、Python、Go、Ruby、Objective-C和C#.[4]從 3.0.0 Beta 2 版開始支援JavaScript。[5]
第三方實作支援Perl、PHP、Dart、Scala和Julia.[6]
參考文獻
- ^ Release 27.3. 2024年7月31日 [2024年8月27日].
- ^ Protocol Buffers Language Guide. Google Developers. [2016-04-21]. (原始内容存档于2016-05-13).
- ^ Protocol Buffers for JavaScript.. github.com. [2016-05-14]. (原始内容存档于2017-02-22).
- ^ Protocol Buffers Language Guide (proto3). Google Developers. [2016-04-21]. (原始内容存档于2016-04-22).
- ^ Protocol Buffers v3.0.0-beta-2. Google Developers. [2016-05-14].
- ^ ThirdPartyAddOns - protobuf - Links to third-party add-ons. - Protocol Buffers - Google's data interchange format - Google Project Hosting. Code.google.com. [2012-11-07]. (原始内容存档于2012-10-29).
外部連結
- Official project page(页面存档备份,存于互联网档案馆) at developers.google.com
- Another official home page(页面存档备份,存于互联网档案馆) at Github project hosting
- Protocol Buffers Objective-C
- Protocol Buffers Apple Swift
|
|