程序员如何保证代码正确
http://tech.ddvip.com 2008年01月06日 社区交流
内容摘要:本文作者具有给别人的代码调试,指出存在问题的丰富经验。他恳切地给出了程序员编程时,需要注意的问题,供大家参考!
遇到问题的时候:
1、不要怨天怨地
出了问题,当然有可能是系统的bug,API的问题,但是那些几率往往比你犯低级错误的几率要低多了,先从自己身上找原因,是不是自己写错了。
2、要掌握工具
最低限度你要会写Log,最好是Log和调试器结合。好的工具可以大大的提高效率。以前有人跟我说,Dll不能调试,我发现可以;有人说多线程不能调试,我发现可以;有人说COM不能调试,我发现可以;有人说IE插件不能调试,我发现可以;有人说OE插件不能调试,我发现也可以。当然,你确实会遇到不能调试的时候,当年我们做东芝芯片的嵌入程序,一个组都没有一个仿真器和调试器,但是至少可以用Log嘛,无非是麻烦点。
3、分析问题要有逻辑
遇到问题可以先把所有的可能性都列出来,然后一个一个分析,肯定能找到原因的。
4、要学会隔离问题
问题涉及到的代码越多,越难以理解,问题越难以解决。遇到这样的情况,可以利用Log或者调试器,一行代码一行代码的给它们洗清嫌疑,这样很快你就可以找到出问题的地方。如果代码特别长,程序特别复杂,可以用二分法来做,效率很高。
5、千万不要懒惰,不要事事求别人
一次复杂的调试过程就像一部侦探剧,如果你有非常好的逻辑性,那这部剧的主角就是福尔摩斯,剧情一定非常精彩。我说这个是有巨大风险的,说真的我帮人调东西挺上瘾的,很有意思。但是我还是要告诉大家,一次高难度的调试之后,你的满足感绝对不亚于写了一个伟大的程序。
要想不遇到问题,写代码的时候:
1、要对写出来的代码负责
我很佩服那些写代码写100行都不执行一次的高手,如果他们最后不被低级错误困扰的话我就更加的佩服了。我写程序几乎是写一行两行就要执行一次,每句话我都要确保执行效果跟我的预期一致。没错这样写的时候可能慢一些,但是调试的时候很轻松,我可以很简单的确定哪些代码绝对没有问题。所以我写代码整体速度比一般人高。很多人学习新东西的时候喜欢把例子抄一遍,运行一下,改改,再运行。我喜欢一句一句的抄例子,抄一句两句执行一次,这样可以把例子透彻的理解,而且很难会遇到出现了问题找不到原因的时候。
来源:Csdn 作者:郝培强 责编:豆豆技术应用