2010-06-21 121 views
5

我有一个变量,指示UI可以空闲的时间长度。我已经选择调用这个变量UITimer。我想将变量传递给我的类构造函数,然后将其存储在本地字段中。启动参数的首字母缩写大写

做这个套管的正确方法是什么?我们使用不被大写的参数的通用约定。所以我应该这样做:

uITimer 

or this?

uiTimer 

此外,我们为我们的字段做一个下划线和小写的第一个字母。

应该说是声明如下:

private int _uITimer 

或类似这样的

private int _uiTimer? 

我觉得_uiTimer是去(其他选项似乎跛),但我很感兴趣,看看是否方式我错过了一些东西。

最好的回答将是一个文档,指出缩写词都应该保持相同的情况下,在C#中的命名(或者类似的东西)

回答

12

微软框架设计指南链接有以下就这个话题说:


3.1.2为首字母缩略词

DO将两个字符首字母缩写词的两个字符都大写,除了骆驼式标识符的第一个字。

System.IO 
public void StartIO(Stream ioStream) 

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

System.Xml 
public void ProcessHtmlTag(string htmlTag) 

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


你基本上被问及最后的这三个规则。

我个人也会选择uiTimer,只是因为uITimer看起来不太可读。

+0

你会应用这些规则的缩写B2B或A2Z?第二条规则可能适用于这种情况,但B2b或A2z看起来很奇怪 – Andronicus 2010-12-16 17:18:15

+0

_ @ Andronicus_,我相信这些情况下,上述准则的例外情况会蔓延。如果没有跟随任何其他内容,我可能会写'B2B',但如果有其他内容跟在后面,我会写'B2b'。 'B2bFoo'(为了使字边界容易识别)。但我不确定。 - 另一个微软自己不确定如何利用资金的好例子是“ID”与“Id”。 – stakx 2010-12-17 08:28:39