protobuf的最佳文件命名风格是什么?

Yan*_* Bo 7 naming coding-style naming-conventions protocol-buffers

有一个风格指南协议缓冲区.但它没有明确说明.proto文件应该如何命名.

MyProtos.proto,my_protos.proto或者my-protos.proto,这是更好的名字?

dim*_*thu 9

由于这个问题已经有近 8 年历史了,对于那些在 2020 年代关注这个问题的人来说,现在谷歌发布了一份风格指南。

文件命名摘录

文件应命名为 lower_snake_case.proto

https://developers.google.com/protocol-buffers/docs/style


Fra*_*ser 8

我不相信任何文件"应该被命名"的答案是否合适,而不是为了保持一致性和清晰度.

一致性意味着遵循项目已有的源和标头的文件命名约定.如果使用camel-case命名源,请对proto文件执行相同的操作.在我看来,最常见的选择是my_protos.proto版本.

清晰度对我意味着文件名应该给出一些关于内容的线索.我通常喜欢在它们实现的类之后命名文件,并且通常每个类有一个单独的文件(对).我会为proto文件推荐相同的内容.我更喜欢几个小的proto文件,每个文件定义一个单独的Message或非常密切相关Messages的单个巨大的proto文件Messages,在一个地方定义你的所有.

  • 请注意,Java中存在一些限制.如果您有一个名为Person.proto的proto文件,则无法声明名为Person(带有大写P)的消息.这是因为生成的代码创建了一个包含原型文件名称的包装类:Person,并且声明的消息名称创建了一个具有相同名称的嵌套类(在本例中). (5认同)
  • @noti这似乎不再是这种情况了.刚尝试了这个,外部类名为`PersonOuterClass`.不完全确定何时更改. (2认同)