开发人员编码规范

一、命名风格
常见的两种命名风格:Pascal风格、Camel风格
Pascal风格:每个单词的首字母均大写,其他字母小写(驼峰命名法<比较推荐>)
Camel风格:首字母小写,其余每个单词首字母均大写
二、文件命名
1,如无特殊情况,文件名使用Pascal命名风格,即每个单词的首字母都大写,其他字母小写。
2,扩展名小写
举例:StateCodeConst.cs、SysConstants.cs、MemberNotFoundException.cs都符合此规范
三、方法命名
1,使用Pascal命名风格。
2,方法名应使用动词或动词短语,能简明扼要的表达该方法的意图,尽量避免造成误解。
举例:GetRandom()、SendMail()、Alert()、ExecuteScript()及RemoveRange();
四、变量命名
1,所有的变量使用Camel命名风格
2,使用有意义的,描述性的词语来命名变量
3,除了循环迭代中的变量,避免使用单个字母的变量名
4,是类属性的名称中包含类名是多余的如Book.BoolTitle ,应该是Book.Title
5,如果需要,可以在变量名的首端或末尾加上计算限定符(Avg、Sum、Min、Max、Index等)。
6,在变量名中使用互补对,如min/max、begin/end和open/close
7,布尔变量名应该包含Is,这意味着Yes/No,或者True/False值,如fileIsFound;
五、类命名
1,使用Pascal命名风格
2,用名词或名词短语命名类
3,使用全称避免缩写,除非缩写是一种公认的约定,如URL和HTML
4,不要使用类型前缀,如在类名称上对类使用C前缀,例如使用类名称FileStream,而不是CFileStream
5,不要使用下划线字符
6,如果类使某个接口的实现,那么建议使用“Impl”后缀,标识是该接口的实现类,“Impl”是“Implementation”的缩写,如果一个类使某个接口的默认实现,则建议使用“DefaultImpl”后缀

六、接口命名
1,使用Pascal命名风格
2,用名词或者名词短语或者描述行为的形容词命名接口,如IComponent使用描述性名词;接口名称ICustomAttributeProvider使用名词短语;名词IPersistable使用形容词
3,给接口名称加上字母I前缀,指示该类型为接口,在定义类/接口(其中类使接口的标准实现)时,使用相似的名称,两个新名称的区别,应该指示接口名称上有字母I前缀
七、参数命名
1,使用Camel命名风格
2,使用描述性参数名称,参数名称应当具有足够的描述性,一遍参数名称及其类型可以于在大多数情况下确定它的含义
八、字段命名
1,使用Pascal命名风格
2,字段名称不要使用大写字母
3,字段名称应能默哀书清楚该字段所代表的数据意义,且仅使用公认的缩写录入URL、UUID等
九、方法的责任和规模
1,一个方法应只是完成一个任务,换句话说,只提供一个类型的服务
2,不好的反例就是将多个任务放到一个方法中,及时这些任务非常简单,也不要这样做
3,避免方法体过长,如果过长则应该考虑将其分解到多个不同的方法中
十、关于空行的使用
1,方法间使用一个空行将其进行分隔
2,不同的逻辑代码段使用空行进行分隔
3,方法与方法,属性与属性之间
4,方法中变量声明与语句之间
5,方法中返回语句与其他语句之间
6,属性与方法,属性与字段、方法与字段之前
十一、关于变量的声明和初始化
1,建议一行只声明一个变量,并按字母顺序排列
2,成员变量必应声明为Public或protected,而应声明为private,如果需要,可以考虑为该字段提供get和set属性访问器(字段对应的属性,必要的时候需要注释)
3,尽量避免在方法间共享成员变量,如果在方法间共享成员变量,那就很难知道是哪个方法在什么时候将变量值给改了
4,建议在代码块开始的时候处理定义变量

十二、关于异常处理
1,捕捉特定的异常,而不是一般异常
2,避免捕捉了异常却什么也不做,要记录异常发生时的一些关键信息,例如时间,方法,类等
十三、关于语句
i++;//推荐
j–;//推荐
i++;j–;//不推荐
十四、复合语句
复合语句是指包含“父语句{子语句;子语句;}”的语法,使用复合语句应遵循以下几点:
1,子语句要缩进
2,左花括号”{“在复合语句父语句的下一行并与之对其,单独成行
3,即使只有一条子语句也不要省略花括号“{}”,如下所示:
while(!isComplete)
{
n ++;
}

注:接口/类名、字段、属性、方法名(参数名)、变量名等都需要加上必要的文字说明(注释),除非是任何人都能一眼看明白是啥意思的例外

你可能感兴趣的:(个人工作总结)