【转载】C#编码标准━━命名规范

1.利用 Pascal的方式定义类型、方法名和常量

    public class SomeClass
   
{
        const int DefaultSize = 100;
        public SomeMethod(); {}
    }
2.对于局部变量名和方法的参数使用骆驼命名法
    int number;
    void MyMethod(int someNumber) {}

 

3.接口的名称前加上I
    interface IMyInterface {…}
4.在私有成员变量前加上m_。对于m_后面的变量名使用骆驼命名法
    public class SomeClass
    {
        private int m_Number;
    }

 

5.对自定义的属性类加上后缀Attribute
6.对自定义的异常类加上后缀Exception
7.方法的命名使用动词─对象对,例如ShowDialog()
8.有返回值得方法的命名中要有对返回值得描述,例如 GetObjectState()
9.使用带有说明性的变量名
    a)避免单字符的变量名,例如i或t等。使用类似于index或temp这样有意义的名字。
    b)对于public或protected类型的变量避免使用匈牙利表示法
    c)不要缩写单词(例如用num取代number)

 

10.总是使用C#预定义的类型而不要使用在System名称空间中的 别名,例如:
    使用object而不是Object
    使用string而不是String
    使用int而不是Int32

 

11.在使用泛型的时候,类型的首字母要大写。当处理.NET中的 Type类型的时候,保留Type后缀。(C#2.0新特性)
    //正确
    public class LinkedList {…}
    //避免
    public class LinkedList {…}
12.使用有意义的名字定义名称空间,例如产品名或者公司名
13.避免通过全限定方式使用类型名称,使用using关键字
14.避免在一个名称空间中使用using关键字
15.把所有系统框架提供的名称空间组织到一起,把第三方提供的名称空 间放到系统名称空间的下面

    using System;

    using System.Collection.Generic;
    using System.ComponentModel;
    using System.Data;
    using MyCompany;
    using MyControls;

 

16.使用代理推导而不要显式的实例化一个代理(C#2.0新特性)
    delegate void SomeDelegate();
    public void SomeMethod(); {…}

 

17.维护严格的代码缩进。不要使用tabs或非标准的缩进,例如一个 空格。推荐的缩进是3到4个空格
18.在和你的代码缩进处于同一个级别处为该行代码添加注释
19.所有的注释都应该通过拼写检查。注释中的错误拼写意味着开发进度 的延缓。
20.所有的类成员变量应该被声明在类的顶部,并用一个空行把他们和方 法以及属性的声明区分开
    public class MyClass
    {
        int m_Number;
        string m_Name;
        public void SomeMethod1();
        public void SomeMethod2();
    }

 

21.在最靠近一个局部变量被使用的地方声明该局部变量
22.一个文件名应该能够反映它所对应的类名
23.当使用一个部分类并把该类分布到不同的文件中时,在每一个文件名 末尾都加上该文件实现的部分在类整体中扮演的作用。例如:
    //In MyClas.cs
    public partical class MyClass {…}
    //In MyClass.Designer.cs
    public partical class MyClass {…}
24.总是要把花括号“{”放在新的一行
posted @   飞扬青云  阅读(566)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示