• C#命名规范汇总12条


    前言

    在刚学习c#的时候,在脑子根本就么有命名规范这个概念,有了一定入门的基础,也很难严格要求自己去规范代码的命名,工作后,发现自己的命名和其他人的命名总会有一些出入,总会闹出一些尴尬的笑话,这里汇总12条c#命名规范。

    命名方式主要有两种,
    1.驼峰命名法:Camel,驼峰命名法跟帕斯卡命名法相似,只是首字母为小写,如userName。因为看上去像驼峰,因此而得名。俗称“小驼峰”。

    2.帕斯卡命名法:帕斯卡命名法 即pascal命名法。做法是首字母大写,如UserName,俗称“大驼峰”。
    还有一种不是很常见的:匈牙利命名法,该命名法是在每个变量名的前面加上若干表示数据类型的字符。基本原则是:变量名=属性+类型+对象描述。如i表示int,所有i开头的变量命都表示int类型。s表示String,所有变量命以s开头的都表示String类型变量。

    1.变量命名及定义

    • 在简单的循环语句中计数器变量使用 i, j, k, l, m, n
    • 使用 Camel 命名规则
      -私有变量也可以加_,如 _userName
    • 对于bool型属性或者变量使用Is(is)作为前缀,不要使用Flag后缀,例如应该使用IsDeleted,而不要使用DeleteFlag
      -String.Format()代替字符串拼接;
      -长字符串相加或拼接次数较多时,使用String.Builder;
      -使用int.TryParse(),不使用int.Parse();
      -不再循环内定义变量;

    2.属性命名

    • 名称应该为名词及名词短语
    • 使用Pascal规则

    3.枚举命名规则

    • 对于 Enum 类型和值名称使用 Pascal 大小写。
    • 少用缩写。
    • 不要在 Enum 类型名称上使用 Enum 后缀。
    • 对大多数 Enum 类型使用单数名称,但是对作为位域的 Enum 类型使用复数名称。
    • 总是将 FlagsAttribute 添加到位域 Enum 类型。

    4.方法命名

    • 使用Pascal规则
    • 对方法名采用一致的动词/宾语或宾语/动词顺序。例如,将动词置于前面时,所使用的名称诸如 InsertWidget 和 InsertSprocket;将宾语置于前面时,所使用的名称诸如 WidgetInsert 和 SprocketInsert。
    • 推荐名称应该为动词或动词短语.例如Save,SaveCustomer,而不要使用CustomerSave

    5.集合命名

    • 名称应该为名词及名词短语
    • 使用Pascal规则
    • 名称后面追加“Collection”或者加复数形式-s也行

    6.自定义的属性以Attribute结尾

    代码如下:
    public class AuthorAttribute : Attribute
    {
    }

    7.自定义的异常以Exception结尾

    代码如下:
    public class AppException : Exception
    {
    }

    8.接口命名

    • 接口名称应该为名词及名词短语或者描述其行为的形容词,尽可能使用完整的词. (Example IComponent or IEnumberable)
    • 使用Pascal规则
    • 使用字符I为前缀,并紧跟一个大写字母(即接口名的第一个字母大写)
      例如:

    代码如下:
    interface ICompare
    {
    int Compare();
    }

    9.类命名

    • 类名应该为名词及名词短语,尽可能使用完整的词.
    • 使用Pascal规则
    • 不要使用类前缀 - 不要使用下划线字符 (_)。
    • 有时候需要提供以字母 I 开始的类名称,虽然该类不是接口。只要 I 是作为类名称组成部分的整个单词的第一个字母,这便是适当的。例如,类名称 IdentityStore 就是适当的。
    • 在适当的地方,使用复合单词命名派生的类。派生类名称的第二个部分应当是基类的名称。例如,ApplicationException 对于从名为 Exception 的类派生的类是适当的名称,原因是 ApplicationException 是一种 Exception。请在应用该规则时进行合理的判断。例如,Button 对于从 Control 派生的类是适当的名称。尽管按钮是一种控件,但是将 Control 作为类名称的一部分将使名称不必要地加长
      -创建类时不要与内置类名相同,以免混淆

    10 缩进

    缩进会使代码逻辑更加清晰,嵌套更加明确。缩进时不要是使用空格键,使tab键。

    11控件的命名

    -Button:btn开头
    -Textbox:tb开头
    -Combox:cb开头
    -ContentMenuStrip:cms开头
    -CheckBox:ccb开头
    -DataGridView:dgv开头

    12事件命名

    • event handlers命名使用 EventHandler 后缀
    • 两个参数分别使用 sender 及 e
    • 使用Pascal规则
    • 事件参数使用EventArgs 后缀
    • 事件命名使用语法时态反映其激发的状态,例如 Changed,Changing
    • 考虑使用动词命名. 变量命名

    总结

    良好的命名规范是作为码农的最基本要求,是“做人的底线”。还有一些没有指出的规范,希望能评论指出,谢谢。

  • 相关阅读:
    钉钉outgoing机器人小项目开发
    js根据cookie判断,一天之内只弹出一次弹窗
    js倒计时功能
    jquery的$().each,$.each的区别
    VS代码提示自动高亮
    winform当前屏幕大小
    动态增删改控件
    datagridveiw样式
    sql 语句 提取中文的首字母
    按键监听及重写
  • 原文地址:https://www.cnblogs.com/zhangmumu/p/10472248.html
Copyright © 2020-2023  润新知