RJ.*_*RJ. 9 .net c# programming-languages
我现在工作的公司为它们的C#变量使用一组命名约定,例如iSomeName用于int,sSomeName用于字符串,aSomeName用于数组,bSomeName用于布尔值,dSomeName用于datetime等等.我以前的雇主没有使用i,s,a,b和d前缀,只是将变量命名为一个很好理解的名称.我的印象是,这些前缀在不久前失宠了,从我读到的不是当前的趋势.对我来说似乎很好,只要变量具有足够的描述性来理解它正在做什么,但我想知道现在一天接受的做法是命名变量?
您以前的雇主更符合当前的做法.使用代码对变量进行前缀不是最佳实践.你应该现在只做它,如果它澄清代码,它通常不会.对任何类型的前缀的明显需求应被视为次要的Code气味,表明当前的例程可能过于复杂.花时间改善代码而不是添加前缀.
有关此练习的历史,请参阅匈牙利表示法.名为Apps Hungarian表示法的版本意味着前缀有助于指示变量的用途,而不是其类型.每隔一段时间这是合法的,但很少需要.更常见的做法称为系统匈牙利表示法,其中前缀表示类型.(幸运的是)这种情况变得不那么常见了.
不要太沮丧,不得不这样做.我们不得不实施许多更糟糕的做法.如果这很糟糕,你很幸运.有一些标准(只要他们不疯狂)比没有标准更好.