调试,号称是软件开发过程中最耗时的工作,无数的开发人员在上面花费了无数的时间。毫无疑问,想办法提高调试的效率是非常有用的。那么关键在哪里呢?就是要用科学的方法。
相信所有的开发人员都有这样的经历:要改正一个缺陷,试试改掉这一句行不行,再试试改掉那一句行不行,试来试去,越改越多,最后自己都迷糊了,不知道改了些什么。也许一下子可以了,也许还是不行,还是不知道为什么行或者不行。这个过程会花费很长的时间,最后还不一定有效果,所以是低效的方式。
科学的方法是按部就班,不求速成,因为欲速则不达。其实过程说来也很简单,
- 第一,稳定缺陷;
- 第二,定位缺陷;
- 第三,改正缺陷;
- 第四,测试修改;
- 第五,改正类似的缺陷。
稳定缺陷是第一步,也是最具挑战性的一步。其实就是让缺陷能够重现,搞清楚在什么样的条件下一定会出现这个缺陷。不能有规律重现的缺陷通常都是初始化,跟时间相关,或者空指针之类的问题。能重现了之后就可以开始定位到底是哪一部分代码引起了这个缺陷。这时有各种各样的方法,附在后面的checklist里面,可以根据情况选用。要注意的是欲速则不达,欲速的方法要有个时间限制,超过这个时间还不行就要改用老老实实的方法。不要局限自己的思维,像什么二分搜索,暴力法都可以用上,只要能定位缺陷都是好方法。定位了缺陷之后,改正相对来说就容易多了。值得注意的是一定要理解这个缺陷相关的程序再去改正,不要冲动,不要为了改正去改正,如果没有真正理解程序,通常改正了这个缺陷却又同时会引入其他的缺陷。还有一次只改一个缺陷,要放松,不要着急,想好了再改,要知道改错了反倒会花费更多的时间。改完了
1248




被折叠的 条评论
为什么被折叠?



