最近看了一些书和文章,主要集中于如何写出高质量的代码,理论上讲一个程序员如果有很强的质量意识和编程经验,配合一个强大的IDE工具,我想80%的bug就不会被check-in到代码库中。
传统意义上,程序员认为的code complete就是程序编译通过,第一次编译通过的感觉,每一个程序员都会历历在目,剩下的事情,就交给QA好了。
但是,这自然是不行的,内存泄露,混乱的继承关系以及结构化的编程风格,没有单元测试代码,这样的代码能叫code complete么?
静态代码检查
编译器检查
重构可能性分析
自动的unit 测试生成(基于UML)
所有上述的工作,人可以做,软件也可以做,人做,需要的是经验和毅力,软件做,虽然没人做的全面,但对于一些入行不久的程序员来说,甚至不知道如何做这些事情的人来说,工具就在很大程度上完善了软件的质量。
希望有这样一个开发环境,可以自动的阻止很多程序错误的发生,这时候,才是真正的code complete !