C# 编程规范 (coding standard)
读书笔记, 摘自《Programming .NET Components》
1. 用Pascal命名原则定义类型、函数和常量。
public class SomeClass
{
const int DefaultSize = 100;
public SomeMethod()
{}
}
2. 用camel命名原则定义局部变量和函数参数。
int number;
void MyMethod(int someNumber)
{}
3. Interface 以I开头。
interface IMyInterface
{...}
4. 私有成员变量以m_开头
5. 定制的attribute class以Attribute结尾。
6. 定制的exception class 以Exception结尾。
7. 函数的命名原则: 动词/对象 组合,例如 ShowDialog().
8. 有返回值的函数名称必须表达要返回的内容,例如: GetObjectState().
9. 用描述性的变量名字;
a. 避免使用单个字符的名称,例如用index 和 temp 代替 i, t等。
b. 避免用Hungarian注释用在public 或者 protected 成员变量。
c. 避免使用缩写形式,例如不用number, 而用num.
10. 总是使用C#预定义的类型,而不是用System namespace 中的别名,例如:
object NOT Object
string NOT String
int NOT Int32
11. 用有意义的namespace名字,例如产品名或者公司名
12. 避免在namespace中使用using语句。
13. 把framework namespace放在一起,把自定义和第三方的放在下面。
using System;
using System.Collection;
using MyCompany;
using MyControls;
14. 声明局部变量要尽可能离它第一次使用的地方接近
15. 所有注释应该清晰、明确。
16. 注释的缩进应该与编码的缩进相一致。
17. 用4个空格代替tab来实现缩进。
18. 文件名应该反应其包含的class
19. 总是把{放在一个新行。
20.
1. 用Pascal命名原则定义类型、函数和常量。
public class SomeClass
{
const int DefaultSize = 100;
public SomeMethod()
{}
}
2. 用camel命名原则定义局部变量和函数参数。
int number;
void MyMethod(int someNumber)
{}
3. Interface 以I开头。
interface IMyInterface
{...}
4. 私有成员变量以m_开头
5. 定制的attribute class以Attribute结尾。
6. 定制的exception class 以Exception结尾。
7. 函数的命名原则: 动词/对象 组合,例如 ShowDialog().
8. 有返回值的函数名称必须表达要返回的内容,例如: GetObjectState().
9. 用描述性的变量名字;
a. 避免使用单个字符的名称,例如用index 和 temp 代替 i, t等。
b. 避免用Hungarian注释用在public 或者 protected 成员变量。
c. 避免使用缩写形式,例如不用number, 而用num.
10. 总是使用C#预定义的类型,而不是用System namespace 中的别名,例如:
object NOT Object
string NOT String
int NOT Int32
11. 用有意义的namespace名字,例如产品名或者公司名
12. 避免在namespace中使用using语句。
13. 把framework namespace放在一起,把自定义和第三方的放在下面。
using System;
using System.Collection;
using MyCompany;
using MyControls;
14. 声明局部变量要尽可能离它第一次使用的地方接近
15. 所有注释应该清晰、明确。
16. 注释的缩进应该与编码的缩进相一致。
17. 用4个空格代替tab来实现缩进。
18. 文件名应该反应其包含的class
19. 总是把{放在一个新行。
20.