ProtoBuf初识及其安装

目录

初识

序列化/反序列化

ProtoBuf

Windows下安装

配置环境变量


初识

序列化/反序列化

概念

例如在网络传输中,我们想要将对象发送给对方,发送的网络的对象就会被转化为二进制序列,这个过程叫做序列化

对方接收到这个二进制序列后,将这个二进制序列转化为对象,这个过程叫做反序列化

  • 序列化:把对象转换为字节序列的过程称为对象的序列化

  • 反序列化:把字节序列恢复为对象的过程称为对象的反序列化


什么情况下需要序列化

  • 存储数据:当你想把的内存中的对象状态保存到⼀个文件中或者存到数据库中时

  • 网络传输:网络直接传输数据,但是无法直接传输对象,所以要在传输前序列化,传输完成后反 序列化成对象。例如我们之前学习过 socket编程 中发送与接收数据


如何实现序列化

可以通过下面三种方式实现序列化:
xml、json、protobuf


ProtoBuf

ProtoBuf就是将结构化数据进行序列化的一种方式

自身的特点

  • 语言无关、平台无关:即 ProtoBuf支持 Java、C++、Python 等多种语言,支持多个平台

  • 高效:即比 JSON、XML 更小、更快、更为简单

  • 扩展性、兼容性好:可以更新数据结构,而不影响和破坏原有的旧程序

使用特点

ProtoBuf 是需要依赖通过编译生成的头文件和源文件来使用的

步骤一:

接着经过 PB 编译器,就会自动生成下面的 处理字段的方法和处理类的方法:

不需要我们手动写这两个比较耗时的动作

所以对于开发人员来说,使用 ProtoBuf 是非常快的,更简单的


Windows下安装

首先进入ProtoBuf的github下的官方仓库,点击此处即可进入
版本都可以下载,这里选择的21.11:

进入后,找到下面的 win64 下载:

下载好以后解压,就出现这三个文件:

此时点开bin,并复制该路径:


配置环境变量

打开环境变量,找到系统变量中的Path,点击编辑:

点击新建,将刚刚的bin文件的路径复制进来,之后一路返回点击确定即可

在cmd中输入 protoc --version:

发现有具体版本信息,此时就说明,在Windows下安装完成ProtoBuf的编译器了


ProtoBuf安装完毕

猜你喜欢

转载自blog.csdn.net/m0_64411530/article/details/143258055