Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#中类、函数、变量等的正确命名符号是什么?_C#_Coding Style_Naming Conventions - Fatal编程技术网

c#中类、函数、变量等的正确命名符号是什么?

c#中类、函数、变量等的正确命名符号是什么?,c#,coding-style,naming-conventions,C#,Coding Style,Naming Conventions,我是一名没有正式计算背景的web开发人员,我已经写了几年代码了,但是每次我需要创建一个新的类/函数/变量时,我都会花大约两分钟来决定一个名称,然后如何键入它 例如,如果我写一个函数来求一组数字的和。我应该叫它吗 Sum() GetSum() getSum() get_sum() AddNumbersReturnTotal() 我知道有一个正确的方法可以做到这一点,而我所要求的就是链接到一个好的权威来源:D 作为您要查找的的副本关闭。以上所有内容 我相信官方的C#指南会说,如果总和是一个实例变量

我是一名没有正式计算背景的web开发人员,我已经写了几年代码了,但是每次我需要创建一个新的类/函数/变量时,我都会花大约两分钟来决定一个名称,然后如何键入它

例如,如果我写一个函数来求一组数字的和。我应该叫它吗

Sum()
GetSum()
getSum()
get_sum()
AddNumbersReturnTotal()
我知道有一个正确的方法可以做到这一点,而我所要求的就是链接到一个好的权威来源:D

作为您要查找的的副本关闭。

以上所有内容


我相信官方的C#指南会说,如果总和是一个实例变量,那么就使用getSum(),称之为calculateSum()。但这取决于所使用的编码风格以及项目中现有代码的编写方式。

幸运的是,我不相信有一种标准化的方法可以做到这一点。我选择了一个我喜欢的源代码,它似乎也是我见过的所有其他源代码使用的标准源代码,并使用它运行。

Sum()
,如果它是公共的,并且自己工作的话

GetSum()
如果它是公共的,并且从其他地方检索信息

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

(嗯……这有点模糊,因为你稍微改变了“和”的含义。所以,让我们再试一次

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

类应使用骆驼符号,第一个字母大写

public class MyClass
C#中的函数和方法应该以类似的方式运行,但私有方法除外

public void MyMethod()
private void myPrivateMethod()
变量我倾向于做一些不同的事情:

成员变量

private int _count;
局部变量

int count;

我同意calculate与get的区别:get()应该用于已经计算过的值,或者用于检索不重要的值


此外,在许多情况下,我建议在名称中添加一个名词,这样就可以清楚地知道您要计算的总和。当然,除非您要添加的名词是类名或类型本身。

方法名称是动词。类、字段和属性名称是名词。在这种情况下,
sum
可以作为动词或no传递联合国


AddNumbersReturnTotal
符合上述定义,但有点长。出于对维护我代码的人(通常是我)的善意我尽量避免在标识符中包含多余的单词,也尽量避免容易打字的单词。

camelCase looksLikeThis.PascalCase正是你所想的。我不同意在成员变量上加下划线。Gary,你喜欢在任何地方都使用它吗?给我一个理由。理由!正是我的逻辑Rob。我讨厌键入“this”。所有这些e时间。使用intellisense,当我只需要成员变量时,它会显示一个与类相关的列表。只需键入“\u”就会自动显示一个仅包含我的成员变量的列表。很好!恐怕我不明白这个问题,Harding?配对Sum calculate或get会将方法名称变成动词,即使Sum本身是一个名词。放置名词前加一个Sum可以确保它(和你的方法)被当作动词。