我对骆驼案有疑问。假设你有这样的首字母缩写:Unesco =联合国教育、科学及文化组织。
你应该写:联合国、国家、科学和文化组织
但是如果你需要写首字母缩写呢?喜欢的东西:
getUnescoProperties();
这样写对吗?getUnescoProperties()或getUnescoProperties();
我对骆驼案有疑问。假设你有这样的首字母缩写:Unesco =联合国教育、科学及文化组织。
你应该写:联合国、国家、科学和文化组织
但是如果你需要写首字母缩写呢?喜欢的东西:
getUnescoProperties();
这样写对吗?getUnescoProperties()或getUnescoProperties();
当前回答
微软写的关于camelCase的一些指导方针是:
当使用首字母缩略词时,长度超过两个字符的首字母缩略词应使用Pascal大小写或驼峰大小写。例如,使用HtmlButton或HtmlButton。但是,只由两个字符组成的首字母缩写词应该大写,例如System。而不是System.Io。 不要在标识符或参数名中使用缩写。如果必须使用缩写,则使用驼峰大小写表示包含两个以上字符的缩写,即使这与单词的标准缩写相矛盾。
总结:
当你使用的缩写或首字母缩写只有两个字符长时,全部用大写; 当首字母缩略词超过两个字符时,第一个字符用大写。
因此,在您的特定情况下,getUnescoProperties()是正确的。
其他回答
免责声明:英语不是我的母语。但是我已经考虑这个问题很长一段时间了,特别是当使用节点(驼峰风格)来处理数据库时,因为表字段的名称应该是蛇化的,这是我的想法:
对于程序员来说,有两种“首字母缩写”:
自然语言,联合国教科文组织 在计算机编程语言中,例如tmc和textMessageContainer,通常以局部变量的形式出现。
在编程世界中,自然语言中的所有首字母缩略词都应该被视为单词,原因是:
when we programming, we should name a variable either in acronym style or non-acronym-style. So, if we name a function getUNESCOProperties, it means UNESCO is an acronym ( otherwise it shouldn't be all uppercase letters ), but evidently, get and properties are not acronyms. so, we should name this function either gunescop or getUnitedNationsEducationalScientificAndCulturalOrganizationProperties, both are unacceptable. natural language is evolving continuously, and today's acronyms will become words tommorow, but programs should be independent of this trend and stand forever.
顺便说一下,在投票最多的答案中,IO是计算机语言中的首字母缩写(代表InputOutput),但我不喜欢这个名字,因为我认为(在计算机语言中)首字母缩写只应该用于命名局部变量,而不是顶级类/函数,所以应该使用InputOutput而不是IO
除了@valex所说的,我想用这个问题的答案来概括一些事情。
我认为一般的答案是:这取决于你使用的编程语言。
升C
微软已经编写了一些指导方针,在这种情况下,HtmlButton似乎是命名类的正确方式。
Javascript
Javascript有一些首字母缩写的全局变量,并且它们都是大写的(但有趣的是,并不总是一致),下面是一些例子:
encodeURIComponent XMLHttpRequest toJSON toISOString
微软写的关于camelCase的一些指导方针是:
当使用首字母缩略词时,长度超过两个字符的首字母缩略词应使用Pascal大小写或驼峰大小写。例如,使用HtmlButton或HtmlButton。但是,只由两个字符组成的首字母缩写词应该大写,例如System。而不是System.Io。 不要在标识符或参数名中使用缩写。如果必须使用缩写,则使用驼峰大小写表示包含两个以上字符的缩写,即使这与单词的标准缩写相矛盾。
总结:
当你使用的缩写或首字母缩写只有两个字符长时,全部用大写; 当首字母缩略词超过两个字符时,第一个字符用大写。
因此,在您的特定情况下,getUnescoProperties()是正确的。
JavaScript Airbnb风格指南谈到了这一点。基本上:
// bad
const HttpRequests = [ req ];
// good
const httpRequests = [ req ];
// also good
const HTTPRequests = [ req ];
因为我通常在课堂上阅读大写字母的前导,所以我倾向于避免这样做。说到底,这都是个人偏好。
目前我正在使用以下规则:
首字母缩写的大写字母:XMLHTTPRequest, XMLHTTPRequest, requestIPAddress。 驼色表示缩写:ID[标识符],Exe[可切割的],App[应用程序]。
ID是个例外,抱歉,但这是真的。
当我看到一个大写字母时,我认为这是一个首字母缩写,即每个字母对应一个单独的单词。缩写并不是每个字母都有单独的单词,所以我使用驼峰格。
XMLHTTPRequest是模棱两可的,但这是罕见的情况,它并没有那么模棱两可,所以没关系,规则和逻辑比美观更重要。