protobuf在iOS中的运用
protocolbuffer(以下简称protobuf)是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:java、c#、c++、oc、go 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用 xml和json 进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。
我们重点介绍protobuf在iOS中的运用,官方文档
protobuf使用步骤
- 定义.proto文件
- 配置protobuf环境
- 映射相应语言的文件
- 导入第三方库protobuf
.proto文件的定义
该文件主要是用来作为你传递数据的数据结构的文档,然后通过终端命令生成我们相应语言的model类,导入项目中使用。
.proto的定义语法有官方文档自己学习,在此不过多介绍,在此一定要注意的是,一定要使用proto3来定义,proto2已经在很多第三方库中被淘汰使用(以前用的都是proto2,Proto3出来并不了解,报错信息一度让我怀疑人生)。定义文件类似下图所示: