由于我对所有变量都使用了完全正确的大小写形式,因此引起了其他程序员的大量批评。例如,您的典型程序员将使用employeeCount
变量名,但我使用EmployeeCount
。我对所有内容都使用完全正确的大小写,无论是void方法,return方法,变量,属性还是常量。我什至在Javascript中都遵循此约定。最后一个确实震撼了人们的傻瓜。
关于为什么我不应该遵循这种“非标准”大写字母约定的典型原因是,应为属性和void方法保留完整的适当大小写。局部变量和返回值的方法的首字母应小写,例如int employeeCount = getEmployeeCount()
。
但是,我不明白为什么。
当我对此提出疑问时,似乎只能得到一个任意的答案,那就是标准。不管答案是什么,它通常总是归结为这就是它的样子,我对此并不怀疑。我只是跟随它。。任意答案对我来说永远不够好。
自从使用Office IDE对Excel 97宏进行编程的早期开始,我就不需要用大小写约定来告诉我某些东西是局部变量还是属性。这是因为我一直使用非常直观的命名约定。例如,GetNuggetCount()
很明显地提出了一种方法,该方法可以计算所有矿块的数量。 SetNuggetCount(x)
建议您为块数分配一个新值。 NuggetCount
所有这些本身都暗示了仅包含值的属性或局部变量。对于最后一个,可能会想说:“啊哈!这是问题。属性或变量?这是什么?” 为此,我会回答:“这真的重要吗?”
因此,这就是tl; dr ;:在变量或return方法中的第一个单词使用小写字母的客观,逻辑,非任意原因是什么?
编辑: 对于MainMa
将此代码替换为答案中的第一个代码示例,然后查看您的论点是否成立:
public void ComputeMetrics()
{
const int MaxSnapshots = 20;
var Snapshots = this.LiveMeasurements.IsEnabled ?
this.GrabSnapshots(MaxSnapshots, this.cache) :
this.LoadFromMemoryStorage();
if (!Snapshots.Any())
{
this.Report(LogMessage.SnapshotsAreEmpty);
return;
}
var MeasurementCount = Measurements.Count();
this.Chart.Initialize((count + 1) * 2);
foreach (var s in Snapshots)
{
this.Chart.AppendSnapshot(s);
}
}