关于编程的一些想法

1,编程关键就是两个方面,数据结构以及相关函数(或者说算法)。

2,对于我们现在的这个项目,里面分成两层,一个是接口层,负责COM接口,一个是逻辑层,是真正做事情的。这种分发未必就一定最好,但是实用性不错。

3,程序员最常用的一个解决办法就是递归,递归的难度在于:必须先在脑袋里构造出一个层层递进的逻辑过程,用人脑去模拟电脑的运行过程。

4,项目开始,必须定下来如何Log过程,如何进行自动的unit test,用什么无所谓,但是必须坚持。所谓坚持,就是不断的增加test case,不断地根据需求修改unit test。

5,使用visual c++,编译时打开level 4的警告,可以对代码做一个非常有用的lint。相信很多人也不知道lint是什么,打开就好了,然后根据提示修改代码,尽量减少警告。

6,不会算法无所谓,不会某些语言特性无所谓,但是,不会思考,那就完蛋了。

7,所谓代码质量保证,两条而已,unit test以及code review。

8,代码有了坏味道,一定要改。起一个有意义容易理解的函数以及变量名;长函数改短;删掉不必要的参数;重构重复的代码;确定让函数只做一件事;使用c++标准而不是微软的扩展。

9,使用doxygen的注释方式,可以自动生成代码。

发表评论