代码的规范性总结[转]

来源:互联网 发布:扩展欧几里得算法例子 编辑:程序博客网 时间:2024/05/17 23:35

1。几乎没有注释。
这种代码也许是写得特好。当然更多可能是更烂。

2。文档有些地方和实际代码有出入。
那是文档的问题。

3。操作数据库部分的代码和其它代码没有分离,几乎是混在整个程序里面的,如果要使用其它的数据库……只能重写。
所谓的“没有分离”指的是什么?如果要换数据库就要重写,说明写得的确是烂。如果数据表结构有点变化就要大量修改,偶以为正常。以偶的经验来看,数据表结构是整个系统中藕合度最高的部份,而且偶至今没有找到合适的方法降低,很希望有人教偶。

4。大量的使用了“#define EXAMPLE  string("example")”这样的宏,造成运行时的效率低下。
说明写程序的人对C++还不是很了解。

5。作为基类的类,没有虚析构函数。
同上。

6。将string类的“==”和“compare”方法用混了。
说明写程序的人对STL还不是很了解。

7。很多new语句后面,没有检查是否分配成功。
这点比较疑惑。《Effective C++》的确说了要注意new分配不成功的情况。但各位大虾真的是对每一个new语句都检查一遍吗?很想请教一下代码是怎么写的。还有,这仅仅是在C++中的情况。各位在写Java或C#程序时每次new以后也都检查一遍吗?

8。带有指针的类,没有复制构造函数,同时也没有显式的禁止复制对象。
同4。

9。很多地方将基类的指针强制转换为派生类的指针。
这种情况并不见得是错,如果派生类确实拥有基类所没有的属性和方法的话。并不是什么时候都要用适配器模式的。

10。该使用const的地方,都没有。或者说,整个程序没有出现一次const标识符。
这不是个好习惯,但还不至于是一个致命的坏习惯。

11。调试使用的语句,没有用“#ifdef _DEBUG”包括进去。
这个嘛!无语。


 
原创粉丝点击