编程规范(代码规范)

 

1. 什么是编程规范

编程规范又叫代码规范,就是为了便于自己和他人阅读和理解源程序,而制定的编程时必须遵守的约定。通常,任何一门编程语言都有自己特有的编程规范。

比如:在Visual C++中源程序中变量的取名一般采用匈牙利表示法则,该法则要求每个变量名都有一个前缀,用于表示变量的类型,后面是代表变量含义的一串字符串。例如,前缀n表示整形变量,前缀sz表示以0结束的字符串变量,前缀lp表示指针变量。

编程规范只是一个规范,也可以不遵守,但是要做一个有良好编程风格的程序员,就一定要遵守编程规范,这不仅方便自己阅读源程序,也方便与其他程序员进行交流。

 

2. 编码规范的重要性

1)规范的代码可以促进团队合作

软件项目大多是由一个团队来完成,如果没有统一的代码规范,那么每个人的代码必定会风格迥异,最后代码集成时难度会很大。风格统一的代码将大大提高可读性,这对于团队的合作开发中是非常有益而且必要。

2)规范的代码可以减少bug

没有规范的对输入输出参数的规范,没有规范的异常处理,没有规范的日志处理等,不但导致了我们总是出现类似空指针这样低级的bug而且还很难找到引起bug的原因。相反,在规范的开发中,bug不但可以有效减少,查找bug也变得轻而易举。编码规范有助于提高开发效率的。

3)规范的代码可以降低维护成本

开发过程中的代码质量直接影响着维护的成本,可读性高的代码维护成本必然会大大降低。好的代码规范会对方法的度量、类的度量以及程序耦合性作出约束。

4)规范的代码有助于代码审查

代码审查可以对开发人员的代码规范作出监督。团队的代码审查同时也是一个很好的学习机会,对成员的进步也是很有益的。代码规范不仅使得开发统一,减少审查难度,而且让代码审查有据可查,大大提高了审查效率和效果。

 

2. 代码规范的核心原则

1)代码应该简洁易懂,逻辑清晰

因为软件是需要人来维护的。这个人在未来很可能不是你。所以首先是为人编写程序,其次才是计算。不要过分追求技巧,降低程序的可读性。简洁的代码可以让bug无处藏身。要写出明显没有bug的代码,而不是没有明显bug的代码。

2)面向变化编程,而不是面向需求编程。

需求是暂时的,只有变化才是永恒的。本次迭代不能仅仅为了当前的需求,写出扩展性强,易修改的程序才是负责任的做法,对自己负责,对公司负责。

3)先保证程序的正确性,防止过度工程

过度工程(over-engineering):在正确可用的代码写出之前就过度地考虑扩展,重用的问题,使得工程过度复杂。

 

3. 编程规范内容

1)命名规范

命名是程序规划的核心,类、函数和变量的名字应该总是能够描述让代码阅读者能够容易的知道这些代码的作用。形式越简单、越有规则,就越容易让人感知和理解。应该避免使用模棱两可,晦涩不标准的命名。

2)书写规范

包括每行字数限制、缩进与换行规则、空格括号使用规则、控制语句和循环语句书写规则、函数声明方式、注释写法等。

3)语法规范

包括错误处理规范、异常处理措施等。

Go语言编程规范:一、命名规范 标识符、包、文件夹、文件、变量、常量、接口名。二、代码格式:IDE、gofmt、缩进、行宽、大括号、空格、空行、注释。三、import规范 四、错误处理:error、recover、panic、defer。五、安全处理。六、包依赖管理。