数字范围的命名约定

时间:2013-04-22 18:53:04

标签: c# naming-conventions

有哪些方法可以命名代表一系列数字的变量?例如,我正在开发一个度量应用程序,用于显示人员队列中某些项目的年龄。它们用

衡量
  1. 0-50天
  2. 51-100天
  3. 100天以上
  4. 我考虑过编写范围:zeroToFiftyrange0-50。我还考虑过“部分”命名它们:firstsecondthird,但这根本不具备描述性。你们做了什么来表示数字范围?

1 个答案:

答案 0 :(得分:5)

首先,像ZeroToFifty这样的名字并不是非常具有描述性,几乎不比if (number < 50)好。变量名称应尽可能提供更多信息,同时仍然是简短的。

其次,我建议反对将数值嵌入到常量中 - 如果您确定底部范围变为60,则ZeroToFifty命名将不再匹配。如果您不必在整个代码库中重构名称更改,那么稍后调整值会更容易。此外,常数的用户可能不关心50,他们关心“是年轻还是年老?”。

所以你需要考虑“这些数字范围代表什么”

这取决于用法,但您可能会发现Young, Mature, Old适合您的情况,因为它描述了项目的年龄(从而为​​您提供有关该值的含义或用法的强有力线索)。或许Modern, Classic, Vintage。或Baby, Child, Adult。 (如果它们“适合”你的用法)。

在C#中如果使用枚举类型,则必须始终使用typename,这也有助于澄清含义:ItemAge.Young/Mature/OldTimeInQueue.Short/Medium/Long