Capitalization of an acronym that starts a parameter
I have a variable that indicates the length of time the UI can be idle. I have elected to call this variable UITimer
. I want to pass the variable into my classes constructor and then store it off in a local field.
What is the proper way to do the casing of this? We use the common convention of a parameter not being capitalized. So should I do this:
uITimer
or this?
uiTimer
Also, we do an underscore and lowercase first letter for our fields.
Should that be declared like this:
开发者_StackOverflowprivate int _uITimer
or like this
private int _uiTimer?
I think _uiTimer is the way to go (the other option seems lame) but I am interested to see if I am missing something.
Best answer would be a link to a doc that says that acronyms should all keep the same case in C# naming (or something like it)
Microsoft's Framework Design Guidelines have the following to say on this topic:
3.1.2 Capitalizing acronyms
DO capitalize both characters of two-character acronyms, except the first word of a camel-cased identifier.
System.IO public void StartIO(Stream ioStream)
DO capitalize only the first character of acronyms with three or more characters, except the first word of a camel-cased identifier.
System.Xml public void ProcessHtmlTag(string htmlTag)
DO NOT capitalize any of the characters of any acronyms, whatever their length, at the beginning of a camel-cased identifier.
You've basically asked about the last of these three rules.
I personally would also opt for uiTimer
, simply because uITimer
looks less readable.
精彩评论