我正在设计一个供公众使用的.NET API.在我的API中,有一堆枚举,我正在努力决定用于后缀的约定.
在.NET框架中,我看到使用“Kind”(例如System.DateTimeKind)以及“Type”(例如System.IO.DriveType)的示例.
查看mscorlib中的公共枚举,我看到“Type”被更频繁地使用,但两者仍然在一些较新的类型上使用,这意味着它看起来像Microsoft没有遵循任何特定的约定.
有没有人建议我在API中使用什么?是否有任何已发布的公约涵盖此主题?
我倾向于使用“Kind”作为后缀,并保留术语“Type”来处理System.Type对象或数据类型.
解决方法
微软在枚举方面我唯一知道的命名约定就是这个(从
msdn开始)
- Use Pascal case for Enum types and value names.
- Use abbreviations sparingly.
- Do not use an Enum suffix on Enum type names.
- Use a singular name for most Enum types,but use a plural name for Enum types that are bit fields.
- Always add the FlagsAttribute to a bit field Enum type.
它已经很老了,但没有看到与此相关的任何更新.
我认为任何人都不能告诉你针对特定问题的“正确”方法,因为这两种选择都是有效的,这只是一个品味问题.
我会说你应该与团队达成共识并坚持下去.我认为每个人使用相同的命名约定比使用你的命名约定更重要.
我个人使用Type后缀,但同样,这只是一个品味问题.