《代码大全》读书笔记

来源:互联网 发布:java识别验证码字母 编辑:程序博客网 时间:2024/05/01 01:09

1、变量命名要能完全、准确的描述该变量所代表的事物。切记严禁使用a、aa、x1...类似命名。

2、尽量避免使用全局变量,很多时候为了偷懒使用全局变量,付出的代价就是代码可维护性差、可读性差、易出错等许多缺点。书中给出的解决办法主要有使用访问器子程序来代替全局变量,比如向堆栈中压入元素,据可以使用PushStack(newElement)这样的程序来实现,而不是使用stack.array[stack.top]=newElement。在选择使用全局变量之前,把全局变量设置为局部变量,只有在发现确实必须转变成全局变量,才转。命名的时候可以加一个前缀g_以此标明这个是全局变量,并且在全局变量的声明处指明具体功能。

3、结构体可以减化对数据块的操作,同时明确一组数据之间的关系,增强代码的可读性,使用结构体还可以简化参数列表,减少维护。

4、在很多逻辑查询的地方可以尝试使用表驱动法,增强代码的可读性,提升效率。即直接去访问表或者查询表,以获得你想获得信息,而不是靠一大堆if else。

5、编写代码的时候要有意识的使用防御式编程,检查所有来源于外部的数据的值,检查子程序所有出入参数的值,同时确定如何处理错误的输入数据,比如可以换用最接近的合法值,或者返回错误信息、换用下一个正确的数据,用最妥当的方式在局部处理错误。这样处理除了可以提高代码的稳定性,还可以提高调试效率,迅速找到bug。

6、代码要有意识的模块化编写,这也是为什么不要使用全局变量,全局变量会破坏代码的模块化。模块化可以让我们在同一时间只考虑一部分,便于编写。同时也便于管理大型程序。

0 0