Protobuf 简单使用

一个简单的介绍

Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。
Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。目前提供了 C++、Java、Python 等多种语言的 API。
详见:GitHub

安装 protobuf

首先我们需要安装 protobuf

这里我介绍一下我在 macOS 中使用 brew 安装 protobuf

“1. 首先我们看看可以安装的选项

1
brew search protobuf

图片

这里因为我已经安装了 protobuf250, 所以这里有个小 ✔️

如果这里的搜索结果中没有查看到版本相关信息, 执行下面的指令

1
brew tap homebrew/versions

这样以后 使用 brew search appName 的时候就能看到不同版本的应用了

  1. 使用 brew 安装
1
brew install protobuf250

安装成功之后可以检验一下:

1
protoc -version

protoc 指令

下面我们就能使用 protoc 指令来讲 .proto 文件编译成 protobuf 支持的其他语言的文件了,例如 .java 文件

指令如下

1
protoc --java_out=/path/to/java/out/dir/ ./Demo.proto

Demo.proto 编译成 Demo.java 文件, 并且输入到 /path/to/java/out/dir

具体介绍见
protoc 指令介绍

Intellij Idea 使用 Google Protocol Buffers Support

当然,日常开发过程中,我们都是使用 IDE, 如 Intellij Idea
Intellij Ideaprotobuf 的支持比较好

“1 安装 Google Protocol Buffers Support 插件

图片
图片

2 添加 Protobuf Facet
图片
图片
图片

3 点击 Build Project 按钮

.proto 文件