Skip to content

Latest commit

 

History

History
73 lines (36 loc) · 24.6 KB

README.md

File metadata and controls

73 lines (36 loc) · 24.6 KB

protobuf

Protocol Buffers(协议缓冲)是谷歌的数据交互格式.

参考

官方仓库protocolbuffers/protobuf

谷歌开发者-protocal-buffers

概述

Protocal Buffers(简称protobuf), 是出自谷歌跨语言, 跨平台, 可扩展的机制, 用于将结构化数据序列化. 你也可以查看官方文档.

本文包含protobuf安装说明, 为了安装protobuf, 你需要安装协议编译器, 用于编译.proto文件, 并且选择对应编程语言的protobuf运行时.

Protocol编译器安装

协议编译器是用C++写的, 如果你使用的语言是C++, 请参考C++ Installation Instructions来安装protoc和C++运行时.

对于非C++用户, 最简单的方法是下载我们发布的预编译二进制包, 下载地址: https://github.com/protocolbuffers/protobuf/releases

对于每个发布版本, 你可以找到对应的预编译二进制ZIP包, 格式为:protoc-版本-$平台.zip. 它包含了protoc二进制文件以及一组随protobuf一起发布的标准.proto文件.

如果你需要更早的版本, 请从下面的maven仓库检出: https://repo1.maven.org/maven2/com/google/protobuf/protoc/

预编译的版本值包含发布版本, 如果你想使用最新的主干master版本, 或你想要修改protobuf源码, 或你使用C++, 建议从源码构建protoc二进制包.

如果你想从源码编译构建protoc二进制包, 请参考C++ Installation Instructions.

Protobuf运行时安装

Protobuf支持多种不同编程语言, 参考下面的表格, 选择使用的语言, 对应的源码目录有使用手册和protobuf运行时安装指南.

Language Source Ubuntu MacOS Windows
C++ (include C++ runtime and protoc) src Build status Build status Build status Build status Build status Build status
Java java Build status Build status Build status Build status
Python python Build status Build status Build status Build status Build status Build status Build status Build status Build status Build status Build status Build status Build status Build status
Objective-C objectivec Build status Build status Build status Build status
C# csharp Build status Build status Build status
JavaScript js Build status Build status
Ruby ruby Build status Build status Build status Build status Build status Build status Build status Build status Build status Build status
Go protocolbuffers/protobuf-go
PHP php Build status Build status Build status Build status
Dart dart-lang/protobuf Build Status

快速开始

学习怎样使用protobuf最好的方法, 就是跟着我们的开发者指南动手实操:

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

Go教程

如果你想从示例代码中学习, 你可以参考本项目的 examples 目录.

文档

关于Protocol Buffers完整的文档, 请参考Goolge开发者protocal-buffers网站:https://developers.google.com/protocol-buffers/