bit*_*onk 24 c# resharper naming-conventions framework-design
我在一个类中有一个属性"EntityID".Resharper(5.1)说
名称"EntityID"与规则"方法,属性和事件"不匹配.建议的名称是'EntityId'.
但恕我直言,根据类库开发人员设计指南中的命名惯例.'EntityID'应该非常好:
- 不要使用计算领域通常不接受的首字母缩略词.
- 在适当的地方,使用众所周知的首字母缩略词来替换冗长的短语名称.例如,使用UI作为用户界面,使用OLAP进行在线分析处理.
- 使用首字母缩略词时,请使用Pascal case或camel case作为长度超过两个字符的首字母缩略词.例如,使用HtmlButton或htmlButton.但是,您应该将仅包含两个字符的首字母缩写词大写,例如System.IO而不是System.Io.
- 不要在标识符或参数名称中使用缩写.如果必须使用缩写,请将camel case用于包含两个以上字符的缩写,即使这与单词的标准缩写相矛盾
*更新:*指南的最新版本还说:
除了骆驼标识符的第一个单词之外,请将两个字符的首字母缩写大写. 名为DBRate的属性是用作Pascal标识符的第一个单词的简短缩写(DB)的示例.名为ioChannel的参数是用作驼峰标识符的第一个单词的简短首字母缩写词(IO)的示例.
我是否正确理解指南?如果是这样,我怎么能让ReSharper接受"EntityID"(众所周知的两个字母的缩写),但拒绝"HTMLReader"(它应该是HtmlReader).
Tim*_*oyd 44
如果您希望ReSharper将"ID"作为"Identity"的有效缩写,则只需选择Property,按"Alt-Enter",然后从ReSharper上下文菜单中选择"Add'ID'到缩写列表".
Luk*_*keH 22
您是否希望坚持框架设计指南的建议,或者您是否想要使用大写ID?
可以在标识符中使用的两个缩写是
ID和OK.在Pascal标识符中,它们应该显示为Id,和Ok.如果用作驼峰标识符中的第一个单词,它们应分别显示为id和ok.
所以似乎ReSharper在这种情况下是正确的Id.
出于兴趣,ReSharper还建议两个字符的首字母缩写词遵循相同的套管规则.这与指南不一致:"除了骆驼标识符的第一个单词之外,请将两个字符缩写词的两个字符大写."
最简单的解决方案是进入ReSharper选项,在"C#命名样式"选项卡下,确保选中"覆盖常用设置",然后双击"方法,属性和事件".单击"添加"以添加新的"添加"并将其设置为"UpperCamelCase",其名称后缀为"ID".
根据需要添加其他后缀.
您也可以使用"C#命名样式"页面上的"高级设置..."按钮来执行此操作,这样可以提供更多灵活性,但我不会为此烦恼...
| 归档时间: |
|
| 查看次数: |
9579 次 |
| 最近记录: |