Protocol Buffers - 谷歌的数据交换格式

2008 年谷歌公司版权所有。

https://developers.google.com/protocol-buffers/

概述

协议缓冲区(Protocol Buffers,又称 protobuf)是谷歌的语言中立、平台中立、可扩展的机制,用于序列化结构化数据。你可以在谷歌开发者网站上找到 [protobuf 的文档](https://developers.google.com/protocol-buffers/)。

这个 README 文件包含 protobuf 的安装说明。要安装 protobuf,你需要安装 protocol 编译器(用于编译 .proto 文件)和你选择的编程语言的 protobuf 运行时。

Protocol 编译器安装

协议编译器是用 C++ 编写的。如果你使用的是 C++,请按照 C++ 安装说明 来安装 protoc 和 C++ 运行时。

对于非 C++ 用户,安装协议编译器的最简单方法是从我们的发布页面下载一个预构建的二进制文件:

https://github.com/protocolbuffers/protobuf/releases

在每个版本的下载部分,你可以找到预先建立的二进制文件的压缩包:protoc-\(VERSION-\)PLATFORM.zip。它包含 protoc 二进制文件以及一组与 protobuf 一起分发的标准 .proto 文件。

如果您正在寻找发布页中没有的旧版本,请查看这里的 maven repo:

https://repo1.maven.org/maven2/com/google/protobuf/protoc/

这些预建的二进制文件只提供给已发布的版本。如果你想在 HEAD 使用 github 的主版本,或者你需要修改 protobuf 代码,或者你使用的是 C++,建议从源代码构建你自己的 protoc 二进制文件。

如果你想从源代码构建 protoc 二进制文件,请参见 C++ 安装说明

Protobuf 运行时的安装

Protobuf 支持几种不同的编程语言。对于每一种编程语言,你可以在相应的源代码目录中找到关于如何为该特定语言安装 protobuf 运行时间的说明:

语言

源码

C++(包括 C++ 运行时和 protoc)。

src

Java

java

Python

python

Objective-C

objectivec

C#

csharp

JavaScript

js

Ruby

ruby

Go

protocolbuffers/protobuf-go

PHP

php

Dart

dart-lang/protobuf

快速上手

学习如何使用 protobuf 的最好方法是遵循我们的开发者指南中的教程:

https://developers.google.com/protocol-buffers/docs/tutorials

如果你想从代码实例中学习,请看一下 examples 目录中的实例。

文档

协议缓冲区的完整文档可通过网络获得:

https://developers.google.com/protocol-buffers/