C#方法名首字母大写的标准是什么?

59
什么是C#标准的方法名大写规范?是这样的吗:
MyClass.MyMethod()
或者
MyClass.myMethod()

?


2
http://msdn.microsoft.com/en-us/library/xzf533w0.aspx - Jaroslav Jandek
2
顺便提一下,帮助记住这个的一个非常简单的方法。Unity函数“Awake()”等,在C#中当然是PascalCase - 这就是答案。 - Fattie
1
这个问题并不基于观点。它是否适合讨论是另一个问题。我认为它是适合的,但是响亮的少数人(“元”)会说它(以及这个“非问答网站”上绝大多数问题)不适合。 - ispiro
除非您想使用PascalCase来传达某种语义信息,否则绝对没有逻辑上的理由使用PascalCase而不是camelCase。我们使用camelCase的唯一原因是因为我们没有最自然的单词分隔符: 。这种通信是一个缺陷,因为您正在使用人类约定来非正式地传达应该是机器可读和自动化的东西:您的代码编辑器应该自动在视觉上区分类和实例。这意味着Microsoft一口气做出了两个错误决定。 - iono
8个回答

47

18
通过这种命名约定,你如何区分嵌套的内部类和方法?(也许是一个缺陷?) - Oliver Dixon
看起来是这样。我刚才快速浏览了一下,但是没有找到你的疑问的答案。 - il_guru

44

第一个标准是使用C#,第二个标准是使用Java


27
第一个是C#的标准写法,但我认为第二个则是几乎所有其他语言的标准写法。在我所知道的数十种编程语言中,我认为没有其他语言遵循C#的惯例。大多数语言遵循Java的规范(尽管其中许多语言出现在Java之前)。 - ArtOfWarfare
1
编码规范在多种语言之间不一致。这种不一致对于那些使用多种语言进行编码的人来说确实是一个障碍。 - John Glen

5

C# 方法通常采用帕斯卡命名法。可以在这里查看相关指南。


2
微软建议使用第一种方法。

3
不理解为什么微软会推荐第一种方法。我发现以大写字母开头的方法名称真的很难阅读。这就像写一个句子,每个单词都是大写的。 - Nick Wills
1
你知道为什么吗? - noone

1

0

不要相信有一个标准,它取决于你和你的同事喜欢什么。我见过最常见的是使用 PascalCasing 命名方法,Camel 命名私有变量等。


0

-2

驼峰命名法 vs Proper Case。在 C# 中,100% 官方认可的正确方式是后者。


你是错误的(假设你的“后者”指的是原始问题)。 - Alastair Pitts
6
我认为您将C#和Java完全混淆了。 - Øyvind Bråthen
1
假设你所说的“后者”是指原始问题,不,是按照我列出的顺序。 - kprobst
那么,“proper case”是什么意思呢? - Alastair Pitts
2
帕斯卡命名法。如果我称它为其他名称而不是“正确”的名称,对此我深表歉意。我的意思并不是不尊重。 - kprobst

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