C#命名规范学习

命名规则

  • Pascal 规则(帕斯卡命名)

    每个单词开头的首字母大写(如:MyName)

  • Camel 规则(驼峰命名)

    除第一个单词外的其余单词首字母大写(如:myName)

  • Upper 规则(大写)
    仅用于一两个字符长的常量的缩写命名,超过三个字符长度应该应用Pascal规则(如:const A=…,const AB=…)

详细规则

  • 类命名
    • 类命名应该为名词及名词短语,尽可能使用完整的词;

    • 使用Pascal规则;

    • 在适当的地方,使用复合单词命名派生的类,派生类名称的第二部分应为基类的名称

      如:MyName对于从名为Name的类派生的类是合适的名称。

  • 接口命名
    • 接口名称应该为名词及名词短语或者描述其行为的形容词,尽可能使用完整的词;
    • 使用Pascal规则。
  • 枚举命名
    • Enum的类型和值名称均使用Pascal规则;
    • 少用缩写;
    • 不要在Enum类型名称上使用后缀。
  • 变量命名
    • 使用Camel规则;
    • 在简单的循环语句中计数器变量使用i,j,k,v。
  • 方法命名
    • 使用Pascal规则;

    • 采用一致的动词/宾语或宾语/动词顺序;

      如:动词在前–>>WriteData;动词在后–>>DataWrite;推荐前者。

    • 不要在方法名中重复类的名称。

  • 属性命名
    • 使用Pascal规则;
    • 名称应为名词及名词短语;
    • 对于bool类型的属性或者变量应使用Is(is)前缀。
  • 集合命名
    • 使用Pascal规则;
    • 名称应为名词及名词短语;
    • 代表集合的类后面追加Collection,代表集合的变量后面追加List。
  • 事件命名
    • 使用Pascal规则;
    • event handlers命名使用 EventHandler 后缀;
    • 两个参数分别使用 sender 及 e;
    • 事件参数使用EventArgs 后缀;
    • 事件命名使用语法时态反映其激发的状态,例如 Changed,Changing。
  • 其他常用编码规则
    • 代码的缩进,使用Tab,不要用Space;
    • 局部变量的名称要有意义;
    • 所有的成员变量声明在类的顶端,用换行把它与方法隔开;
    • 把想死的内容放在一起,比如数据成员,属性,方法,事件等,并适当使用#region…#endregion。

命名规范表格

  • 类相关
标识符大小写示例
类/结构PascalAppDomain
枚举类型PascalErrorLevel
枚举值PascalFatalError
事件PascalValueChange
异常类PascalWebException 注意 总是以 Exception 后缀结尾
只读的静态字段PascalRedValue
接口PascalIDisposable 注意 总是以 I 前缀开始
集合PascalCustomerCollection / CustomerList
方法PascalToString
命名空间PascalSystem.Drawing
参数CameltypeName
属性PascalBackColor
受保护的实例字段CamelredValue 注意 很少使用,属性优于使用受保护的实例字段
公共实例字段PascalRedValue 注意 很少使用,属性优于使用公共实例字段
  • 前缀
类型前缀示例
ArrayarrarrShoppingList
BooleanblnblnIsPostBack
BytebytbytPixelValue
CharchrchrDelimiter
DateTimedtmdtmStartDate
DecimaldecdecAverageHeight
DoubledbldblSizeofUniverse
IntegerintintRowCounter
LonglnglngBillGatesIncome
ObjectobjobjReturnValue
ShortshrshrAverage
SinglesngsngMaximum
StringstrstrFirstName

单纯记录,方便需要时查找,参考的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值