Swift Protobuf 初探 —— 继 XML 后,JSON 也要被淘汰了吗

Protocol Buffers 是什么?

Protocol buffers are Google’s language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. —— Google Official Definition

简单地说,Protocol Buffers 就是一种轻量高效的结构化数据交换格式,语言无关、平台无关、可扩展。理解地直白粗暴一点就是“更厉害更面向未来的 JSON”,那么接下来我们就将通过 Swift 官方实现的 Protobuf 来一探究竟。

Swift Protobuf

从去掉软盘到干掉光驱,从摈弃 Flash 推广 HTML5 ,到现在干脆把标准音频接口抹去,苹果一向善于引领科技时尚,那么在面向未来的数据交换格式上自然不会落后,因此 Swift Protobuf 应运而生。

开始动手尝试吧

本来我想拿照官方示例来走一遍的,但这次正好有个绝佳的示例,既有客户端又有服务端,可以“做”享其成一次,其中还涉及到 Go 语言,趁此机会也可以把玩一番。

ProtoBufExample 克隆至本地

配置客户端

初始化服务端

启动 API

配置并启动服务 with Go

  • 有必要的话,先下载安装 Go 语言环境,并配置 $GOPATH

体会 .proto

安装 protobuf

用 Swift 编译 protobuf

此时我们就能在 protos 这个输出目录下就可以看到刚刚生成的对应 .pb.swift 文件了。

其中还包括了一些对 JSON 的友好兼容,感兴趣的朋友可以自己动手玩一下。

探索更多

Google Protocol Buffers

Swift Protobuf

ProtobufExample – Github

深入理解 ProtoBuf

Google Protocol Buffer 的使用和原理 – IBM

1 收藏 评论

可能感兴趣的话题



直接登录
跳到底部
返回顶部