最近,小编正在进行机房合作项目,多人开发的项目,让我学到了不少的知识。除此之外,对代码的认识更是有了深一层的理解。好的代码,不仅自己写的放心,别人看着也舒心。你好,我好,大家好的事情,何乐而不为啊!
1、名字应该能够标识事物的特性,并且与业务挂钩。
2、名字一律使用英文单词,而不能为拼音。
3、在名字中,多个单词用大写第一个字母(其它字母小写)来分隔。例如:IsSuperUser。
4、在具体任务开发中,如果有特定的命名约定,则在相应的软件开发计划中予以明确定义及上报质量管理部审计组。
在一般情况下,不推荐缩写命名,不要担心变量命名长,长的变量名能使变量的意义更加清晰,其实从长变量名的负面作用三,因为Ctrl+C和Ctrl+V加上在VS中的智能感知,其负面追用已经很小。变量命名的原则是,尽最大努力让其他人在看到我们的变量/函数/…等的第一时间,大概能猜出它是做什么的。 比如:int productTypeCount = 0; //我们在第一时间就能知道它是记录产品的数量的变量。
编程的命名方式主要有Pascal和Camel两种:
Pascal:每个单词的首字母大写,例如ProductTypeCamel:首个单词的首字母小写,其余单词的首字母大写,例如productType1、文件头部注释
在代码文件的头部进行注释,这样做的好处在于,我们能对代码文件做变更跟踪。在代码头部分标注出创始人、创始时间、修改人、修改时间、代码的功能,这在团队开发中必不可少,它们可以使后来维护/修改的同伴在遇到问题时,在第一时间知道他应该向谁去寻求帮助,并且知道这个文件经历了多少次迭代、经历了多少个程序员的开发和修改。
/*************************************************** ** 作者:XXX ** 创始时间:2016年12月4日16:20:08 ** 修改人:XXX ** 修改时间:2016年12月4日16:20:08 ** 描述: 主要用于产品信息的资料录入,… ***************************************************/2、标准注释
/// <summary> /// <对该方法的说明> /// </summary> /// <param name="参数名称"><参数说明></param> /// <returns> <对方返回值的说明,该说明必须明确说明返回的值代表什么含义> ///</returns>数据库命名数据库的字段、表名的命名都推荐采用Pascal命名方式,尽量不采用缩写。当然,使用长的字段名、表名,可能会使SQL语句的编写带来负面影响。我推荐大家可以使用一些ORM,ORM的性能肯定不会比直接写SQL的好,但是如果做业务系统,更重要的是系统多久能交付用户使用,ORM不仅使开发时间可以缩短不少,并且在后期的维护上也比直接写SQL便利很多。
TypeExample表T_Student、R_ClassGrade表字段userId视图V_Student存储过程PROC_Login触发器TR_Customer_I以下是一些常用的C#成员及其推荐命名方法:
标志符规则实例与描述类classPascalApplication枚举类型enumPascal记住,是以Pascal命名,切勿包含Enum,否则FXCop会抛出Issue委托delegatePascal以Pascal命名,不以任何特殊字符串区别于类名、函数名常量const全部大写全部大写,单词间以下划线隔开接口interfacePascalIDisposable 注:总是以I前缀开始,后接Pascal命名方法functionPascalToString命名空间namespacePascal以.分隔,当每一个限定词均为Pascal命名方式,比如:using参数Camel首字母小写局部变量Camel也可以加入类型标识符,比如对于System.String类型,声明变量是以str开头,string strSQL = string.Empty;数据成员Camel以m开头+Pascal命名规则,如mProductType(m意味member)属性Pascal代码规范有其必要性,但不能因为规范而规范,从开发而言,开发了更快的做出稳定的系统,而稳定的系统是为了给公司带来受益。开发人员、项目管理人员都应该更多的从项目经营的角度出来,同时站在公司、客户的角度考虑问题,而不是因为代码而代码。