关于首字母缩略词的C#命名,如果我正在编写一个与Windows API相关的库,那么对WindowsApi或WindowsAPI有任何强烈的约定,还是只是个人偏好?
答案 0 :(得分:56)
有一个约定,它为所有长度超过2个字符的首字母缩写词指定初始大写,其余为小写。因此HttpContext
和ClientID
。
答案 1 :(得分:33)
“Framework Design Guidelines”第2版,Krzysztof Cwalina和Brad Abrams,第40-42页
3.1.2缩略语缩略语
DO 将两个字符缩略语上的两个字符大写,除了驼峰标识符的第一个单词。
System.IO
public void StartIO(Stream ioStream)
DO 仅使用三个或更多字符的首字母缩写词的第一个字符,除了驼峰标识符的第一个字。
System.Xml
public void ProcessHtmlTag(string htmlTag)
不要大写任何首字母缩略词中的任何字符,无论其长度如何,都是在驼峰标识符的开头。
答案 2 :(得分:9)
在此处查看Microsoft的官方命名准则Naming Guidelines
答案 3 :(得分:8)
我听说你应该避免使用缩写词,因此它会变成WindowsApplicationProgrammingInterface
。
更为严肃(尽管下面引用了以下内容,人们似乎误读了上述内容),this page说:
任何三个或更多字母的缩写词应该是Pascal大小写,而不是所有大写字母。
由于API被认为是众所周知的缩写词,因此如果您想遵循指南,则可以选择名称WindowsApi
。
答案 4 :(得分:6)
老问题,新答案。
根据.NET 4 Capitalization Rules for Acronyms:
将两个字符缩写词的两个字符大写,除了 骆驼标识符的第一个字。
名为
DBRate
的属性是用作简短缩写词(DB
)的示例 Pascal标识符的第一个单词。一个名为的参数ioChannel
是用作第一个单词的简短首字母缩写词(IO
)的示例 一个骆驼标识符。请仅使用三个或更多首字母缩写词的首字母大写 字符,除了驼峰标识符的第一个单词。
一个名为
XmlWriter
的类是一个用作长的首字母缩略词的例子 Pascal标识符的第一个字。名为htmlReader
的参数 是一个长的首字母缩略词的例子,用作a的第一个单词 骆驼标识符。不要将任何首字母缩略词中的任何字符大写,无论如何 它们的长度,在骆驼标识符的开头。
名为
xmlStream
的参数是使用的长首字母缩写词(xml
)的示例 作为骆驼标识符的第一个单词。一个名为的参数dbServerName
是第一个用作简短首字母缩写词(db
)的示例 骆驼标识符的字样。
答案 5 :(得分:3)
个人偏好。但.NET会使用WindowsApi
。它类似于TcpClient
的命名。
答案 6 :(得分:3)
这只是个人(或组织)偏好。只要你保持一致,你就没事。
.NET Framework本身将使用WindowsApi。
答案 7 :(得分:1)
也看看FxCop。这是一个很好的实用工具,可以帮助解决这样的问题。