有哪些方法可以命名代表一系列数字的变量?例如,我正在开发一个度量应用程序,用于显示人员队列中某些项目的年龄。它们用
衡量我考虑过编写范围:zeroToFifty
,range0-50
。我还考虑过“部分”命名它们:first
,second
,third
,但这根本不具备描述性。你们做了什么来表示数字范围?
答案 0 :(得分:5)
首先,像ZeroToFifty这样的名字并不是非常具有描述性,几乎不比if (number < 50)
好。变量名称应尽可能提供更多信息,同时仍然是简短的。
其次,我建议反对将数值嵌入到常量中 - 如果您确定底部范围变为60,则ZeroToFifty命名将不再匹配。如果您不必在整个代码库中重构名称更改,那么稍后调整值会更容易。此外,常数的用户可能不关心50,他们关心“是年轻还是年老?”。
所以你需要考虑“这些数字范围代表什么”?
这取决于用法,但您可能会发现Young, Mature, Old
适合您的情况,因为它描述了项目的年龄(从而为您提供有关该值的含义或用法的强有力线索)。或许Modern, Classic, Vintage
。或Baby, Child, Adult
。 (如果它们“适合”你的用法)。
在C#中如果使用枚举类型,则必须始终使用typename,这也有助于澄清含义:ItemAge.Young/Mature/Old
或TimeInQueue.Short/Medium/Long
。