1.通用风格约定
1.1 花括号的使用
要把左括号放在前一条语句的末尾
if(someExpression){
DoSomething();
}
要使右括号与左括号所在行的首行对齐,除非花括号内只有一条语句
要把右括号放在新的一行的开始处
考虑把只有一条语句的代码块和左右花括号写在同一行中。属性的访问方法经常使用这种风格
public int Foo{
get {return foo;}
set{foo=value;}
}
考虑把只有一个访问方法的属性的所有的花括号写在同一行中。
public int Foo{get{return foo;}}
要使花括号单独占一行,除非它后面是else、else if 或while。
避免省略花括号,即使编程语言允许这样做
2.空格的使用
要在左括号之后和右花括号之前加一个空格
避免在左花括号之前加空格
要在形式参数之间的逗号后加一个空格
避免在实际参数之间加空格
避免在左圆括号之后或右圆括号之前加空格
不要在成员的名字和左圆括号之间加空格
不要在左方括号之后后右方括号之前加空格
不要在控制流语句之前加空格
避免在二元操作符之前和之后加空格
不要在一元操作符之前或之后加空格
1.3 缩进的使用
要用4个连续的空格符来进行缩进
不要用制表符(tab)来进行缩进
要对代码块中的内容进行缩进
要对case代码块进行缩进,尽管没有使用花括号。
2.命名约定
要在命名标示符时遵循《框架设计标准》中的命名规范,除非是内部字段和私有字段
要在命名名字空间、类型及成员时采用PascalCasing大小写风格,除非是内部字段和私有字段
要用camelCasing大小写风格来命名内部字段和私有字段
要用camelCasing大小写风格类命名局部变量
要用camelCasing大小写风格来命名命名方法的形式参数
不要使用匈牙利命名法
避免给局部变量使用前缀
要使用C#语言中对应的别名,不要使用.NET框架中的类型名
3.注释
不要用注释来描述一些对任何人都显而易见的事
避免使用块注释语法(/*...*/)。即使注释会有多行,也最好是使用单行注释语法(//)
不要把注释放在行尾,除非注释非常短
4.文件的组织
不要在一个源文件中包含一个以上的公有类型,除非有嵌套类,或各个类型之间的不同之处仅在于泛型参数的数量
要用相同的名字来命名源文件及其包含的公有类型
要用相同的层次结构来组织文件目录和命名空间
考虑根据下面给出的顺序和组别来对成员进行分组:所有字段,所有构造函数,公有属性及受保护的属性,方法,事件,所有显示实现的接口成员,内部成员,私有成员,所有嵌套类型,
要把不能公开访问的成员和显示实现的接口成员放在分别放在自己的#region块中
考虑在每个组别内根据字母顺序来组织成员
考虑根据由简单到复杂的顺序来组织重载成员
要把using指令放在名字空间的声明之外