通常我们会听到使用描述性变量名来传达意图的建议。如果我们避免使用缩写,那么描述性名称有时会变长。
然而,应该存在一个限制,即变量名称可以在人眼中轻松消耗。例如,我在前公司看到了类似的东西:
int thisIsASuperLongVariableNameHere VS int thisIsASuperLongVariableNameThere VS int [] thisIsASuperLongVariableNamesHere
如果我们只浏览这些变量名称,它们看起来非常相似,我们的大脑无法有效地捕捉到它们的不同。
所以我的问题是,人类可以有效消耗的变量名的最大长度是多少?
如果变量名称超过了长度,缩短它们的标准方法是什么?
答案 0 :(得分:2)
没有"标准方法"缩短它们。
我在Steve McConnel的Code Complete(第11章)中找到了一些很好的指导方针。
如果你有权访问它,请看一下(无论如何,它都是值得的书)。不幸的是,我不认为我可以引用他的整个列表而没有版权问题。
修改:我偶然发现post on another site引用了本书的整个部分,其中列出了这些指南。
我不确定报价是多么合法,所以我不在此重复
然而,因为它对某人有帮助,而且我大多澄清说,链接到它是好的 * ,我决定添加一个链接。
请注意,本书的其余部分包含有关命名的更多信息,特别是关于短名称/前缀的信息。
本书的其余部分提供了丰富的信息,任何开发人员都应该知道这些信息,这些信息在发布13年后仍然很重要
因此,我建议所有读者购买整个book即使我链接的报价满足他们当前的需求,并考虑该报价只是一个开胃菜。
你应该记住,在不同情况下瞄准不同长度是有意义的 例如,在Clean Code中,鲍勃叔叔建议
名称的长度应与其范围的大小相对应
通常这可以简化为:
至于你所做的名字的例子,一般来说,如果可以的话,最好尽量避免名字如此相似。
如果你的命名约定不禁止它,你通常可以使用一些简单的技巧来消除相似性:
thisIsASuperLongVariableName_Here
thisIsASuperLongVariableName_There
thisIsASuperLongVariableName_Here_Array