C#中类、函数、变量等的正确命名规范是什么?

4
我是一名没有正式计算机背景的Web开发人员,我已经写了几年的代码了,但每次需要创建新的类/函数/变量时,我都需要花费大约两分钟来决定名称和如何输入它。
例如,如果我编写一个函数来求一堆数字的总和。我应该叫它什么?
Sum()
GetSum()
getSum()
get_sum()
AddNumbersReturnTotal()

我知道有一种正确的方法来做这件事,一个好的权威来源链接就可以了:D

已关闭,作为C#编码标准/最佳实践的重复问题。

7个回答

5

3

类名应该使用驼峰命名法,首字母大写

public class MyClass

C#中的函数和方法应该表现得类似,但私有方法除外。

public void MyMethod()
private void myPrivateMethod()

我通常会以不同的方式处理变量:

成员变量

private int _count;

局部变量

int count;

camelCase 是这样的写法。PascalCase 是你想到的写法。 - Joel Coehoorn
我不同意在成员变量上使用下划线。 - Gary Willoughby
Gary,你喜欢到处使用这个吗?给我一个理由。理由! - Rob Stevenson-Leggett
完全正确,罗布。我讨厌一直输入“this.”。有了智能感知,当我只想要成员变量时,它会列出与类相关的任何内容列表。只需键入“_”即可自动列出仅我的成员变量。太棒了! - Nicholas Mancuso

3

我同意计算和获取的区别:get()应该用于已经计算或者其他方面容易检索到的值。

此外,我建议在许多情况下添加一个名词到名称中,这样很明显你正在计算什么总数。当然,如果你要添加的名词是类名或类型本身,那就不需要了。


1
以上全部内容。
我相信官方的C#指南会建议将其命名为calculateSum(),因为如果和总和有关的是实例变量,那么getSum()就会被使用。但这取决于所使用的编码风格以及项目中任何现有代码的编写方式。

0
幸运的是,我不认为有一种标准化的方法来完成这个任务。我选择我喜欢的那种方式,恰好也是我看到的所有其他源代码都使用的标准,并且继续使用它。

抱歉,哈丁,我不明白你的问题是什么? - user18411

0

Sum() 如果它是公共方法并且可以自己完成任务。

GetSum() 如果它是公共方法并且需要从其他地方检索信息。

对于内部/私有方法,使用sum() / getSum()如上所述。

(嗯... 这有点模糊,因为你稍微改变了“Sum”的含义。那么,让我们再试一次。

XXX 如果xxx是一个过程(求和)。 GetXXX 如果xxx是一个东西。(值的总和)


0

方法名是动词。类、字段和属性名是名词。在这种情况下,Sum 可以作为动词或名词...

AddNumbersReturnTotal 符合上述定义,但有点长。出于对维护我的代码的人(通常是我自己)的好意,我尽量避免在标识符中包含冗余的单词,并且尽量避免易错的单词。


将Pairing Sum计算或获取的方法名称转换为动词,即使Sum本身是名词。在名词前放置Sum几乎可以确保它(以及您的方法)将被视为动词。 - Joel Coehoorn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接