【Protobuf】初识protobuf以及详细安装教程

W...Y的主页 😊

代码仓库分享 💕

 

目录

序列化概念 

 ProtoBuf是什么 

ProtoBuf在window下的安装

下载ProtoBuf编译器 

配置环境变量 

​编辑 检查是否配置成功

​编辑 ProtoBuf在Linux下的安装

下载ProtoBuf

安装ProtoBuf


 

序列化概念 

首先我们先聊一下什么是序列化反序列化,相信在Linux网络编程中我们提到过http在接收或发送时都要先制定一个协议,这个协议是一个类或结构体,而我们将一个对象通过网络传输转成字节序的过程叫做序列化,反之则为反序列化。

什么情况下需要序列化与反序列化呢? 

存储数据:当你想把的内存中的对象状态保存到⼀个⽂件中或者存到数据库中时。
⽹络传输:⽹络直接传输数据,但是⽆法直接传输对象,所以要在传输前序列化,传输完成后反
序列化成对象。例如我们之前学习过?socket?编程中发送与接收数据。 

而在Linux网络编程中,我们使用了json库对我们收到或发送的请求应答进行序列化或反序列化。但是在序列化时不仅仅只有json可以进行操作,还有xml、protobuf。 

 ProtoBuf是什么 

Protocol?Buffers?是?Google?的⼀种语⾔⽆关、平台⽆关、可扩展的序列化结构数据的⽅法,它可⽤于(数据)通信协议、数据存储等。
Protocol Buffers类⽐于XML,是⼀种灵活,⾼效,⾃动化机制的结构数据序列化⽅法,但是比XML更⼩、更快、更为简单。
你可以定义数据的结构,然后使⽤特殊⽣成的源代码轻松的在各种数据流中使⽤各种语⾔进⾏编写和读取结构数据。你甚⾄可以更新数据结构,⽽不破坏由旧数据结构编译的已部署程序。 

 用通俗的话来说:是一种与能让结构数据进行序列化的一种方法。

protobuf本身具有的特点:
语⾔⽆关、平台⽆关:即?ProtoBuf?⽀持?Java、C++、Python?等多种语⾔,⽀持多个平台。?
⾼效:即⽐?XML?更⼩、更快、更为简单。
扩展性、兼容性好:你可以更新数据结构,⽽不影响和破坏原有的旧程序。 

 protobuf的使用特点:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

W…Y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值