C#缩写词的命名约定

问题描述:

关于C#缩写词的命名,如果我正在编写一个与Windows API相关的库,那么对WindowsApi或WindowsAPI有没有强大的约定,还是仅仅是个人偏好?C#缩写词的命名约定

有一个约定,它规定了大于2个字符长度的所有首字母缩写词的首字母大写,其余小写字母。因此,HttpContextClientID

+14

Id - 是首选的大写字母。 “另外两个常用的术语本身就属于一个类别,因为它们是常用的俚语缩写。”Ok“和”Id“这两个词(它们应该如图所示放在一起)是指南的例外:no应在名称中使用缩写“。 “框架设计指南”第2版,第44页。 – 2010-01-21 13:31:20

+19

有人指出,如果ID代表“识别基准”(而不是“标识符”),ID将再次确定。对不起,再次确定。 – peterchen 2010-01-21 14:28:34

+2

@Sergey Teplyakov Microsoft指导方针表示,仅对缩写超过2个字符的Pascal使用。在ID和OK的情况下,所有上限都可以,但HTML会变成Html。 http://msdn.microsoft.com/en-us/library/141e06ef(v=VS.71).aspx – smdrager 2011-03-23 18:52:16

其个人偏好。但.NET会使用WindowsApi。这类似于TcpClient的命名。

我听说你应该避免缩写,所以它会变成WindowsApplicationProgrammingInterface

更严重的是(人似乎误看完上面,尽管下面的报价),this page说:

三个或多个字母缩略语任何应帕斯卡尔情况下,并不是所有的帽子。

由于API被认为是一个众所周知的首字母缩略词,因此如果您想遵循指导原则,那么可以选择名称WindowsApi

+2

如果在域中熟知缩写,则可以。 API在编程中是众所周知的。 – 2010-01-21 12:41:26

+0

+1。框架指导手册建议您避免使用缩写或缩略词或使用PascalCase。我会建议WindowsApi。来自框架的示例:Uri,UriBuilder HtmlDecode。 – Skurmedel 2010-01-21 12:42:27

+1

@John:是的,我对那个人有点tongue舌。 :) – unwind 2010-01-21 12:51:28

这一切都只是个人(或组织)的偏好。只要你一致,你会没事的。

.NET Framework本身会使用WindowsApi。

阻击微软官方命名这里准则Naming Guidelines

+2

该文档适用于.NET 1.1。 – 2010-01-21 12:43:26

+8

我看不出有什么不同?这不像他们改变每个版本之间的约定或任何东西。 – Skurmedel 2010-01-21 12:45:10

+2

这里是第二版的设计指导书。我没有比较,以确定命名中没有任何变化。 – 2010-01-21 13:45:18

Framework Design Guidelines” 的克齐斯茨托夫·克瓦林纳和布拉德·艾布拉姆斯第二版pp.40-42

3.1.2为首字母缩略词

DO利用这两个字符都是双字符首字母缩略词,除了骆驼式标识符的第一个字。

System.IO 
public void StartIO(Stream ioStream) 

DO利用仅具有三个或更多的字符的首字母缩写词的第一个字符,除了骆驼套管标识符的第一个字。

System.Xml 
public void ProcessHtmlTag(string htmlTag) 

DO NOT利用任何任何首字母缩写词的字符,不管其长度,在一个骆驼套管标识符的开始。

看看FxCop吧。这是一个很好的工具,可以帮助解决这类问题。

老问题,新答案。

根据“资本规则缩略语的” MSDN Capitalization Conventions一节:

不要利用两个字符缩写词的两个字符,除骆驼外装标识符的 第一个字。

名为DBRate属性是用作 一个帕斯卡 - 套管标识符的第一字短缩写(DB)的一个例子。名为 ioChannel的参数是用作骆驼型标识符的第一个词 的简称(IO)的示例。

请仅首字母大写字母的首字母缩写词有三个或更多个 字符,但骆驼标识符的第一个词除外。

名为XmlWriter的类是用作Pascal标识符的第一个字的长首字母缩写词的示例。名称为htmlReader 的参数是用作骆驼式标识符的第一个字的长首字母缩写词的示例。

不要在任何首字母缩写词的任何字符上大写,无论它们的长度是多少,在骆驼式标识符的开头。

名为xmlStream的参数是使用 般地外装标识符的第一个字一个长缩写(xml)的一个例子。名为 dbServerName的参数是用作骆驼型标识符的第一个 字的简称(db)的示例。