如何定义协议信息?
使用 message 后面跟消息名称,在其消息块内,定义其所有字段,格式如下:
a. 消息名称格式应为大驼峰命名
b. 字段名格式应为小写蛇形
c. 数据类型有:string、bool、bytes、float、double、int32、int64、uint32、uint64、sint32、sint64...
d. 每个消息字段应分配一个唯一的标签,标签比字段名称更重要,因为protobuf将使用它来序列化消 息。标签不必是有序或者顺序的,但是对于消息的同级别字段,它们必须是唯一的。
4. 从 protocol buffer 生成 go 代码
a. 安装 protobuf: brew install protobuf
b. 通过 protoc 命令检查是否正确安装
c. 安装两个 go-libraries
根据go版本选择使用上面的go get 或
【 go install http://github.com/golang/protobuf/protoc- gen-go@latest 】
d. 创建一个 pb 文件夹用于存储生成的代码,并执行以下命令。
b. 有了描述显存的memory_message 我们遍可以紧接着添加GPU的内容了,这里我们要使 用import将mermory_message 的内容进行导入(如果这里IDE提示无法导入,则需要设置一下IDE 参考这个https://blog.csdn.net/z449077880/article/details/121741524)
运行make gen 进行生成。
6. 同理,我们接下来添加描述键盘配列的keyboard_message.proto、描述屏幕的screen_message.proto 、描述存储的 storage_message.proto 和描述笔记本信息的laptop_message.proto
a. keyboard_message.proto
b. screen_message.proto
c. storage_message.proto
d. laptop_message.proto
运行make gen 生成代码,可以观察到pb文件夹下已经成功的生成了golang代码 从 proto 生成 Java