1

proto3开始,protobuf 规范去掉了optionalandrequired字段。现在只能通过查看文档来确定消息中的字段是否可选的唯一方法,这不是很方便。我们如何将optional_其用作可选字段的字段名称的前缀。

optional_前缀:

原型缓冲区
message User {
    string user_id = 1;
    string name = 2;
    string email = 3;
}
代码
# Don't know which fields are optional, we have to check the docs:
user.user_id = 1
user.name = "bob"
user.email = "bob@gmail.com"

optional_前缀:

原型缓冲区
message User {
    string user_id = 1;
    string optional_name = 2;
    string optional_email = 3;
}
代码
# it is more informative but doesn't read naturally in English.
user.user_id = 1
user.optional_name = "bob"
user.optional_email = "bob@gmail.com"

我通常没有看到这样命名的可选字段。它在我过去的一个团队中使用过,非常方便。您对此有什么特别的看法吗?

4

0 回答 0