调试用于发现错误的根源并改正它,而测试愉好相反,它是用来发现错误的。经常说到的BUG通常就是指系统漏洞,它的由来还挺有意思的。第一台大型数字计算机MarkI时代,程序员发现一次电路故障是由一只进入计算机内部的飞蛾所致,从这以后计算机故障被称为“BUG”。
同测试一样调试并不是提高软件质量的一种方法。它只用于改正错误。而软件的质量从项目的开始便应确保。提高软件质量的最佳方法是遵循详细需求分析、有一个出色的设计、高质量的编码方法。调试为最终的一个不得已之举。
有所收获的错误
- 从中对程序加深了解
- 了解错误类型
- 从别人的角度了解代码质量
- 了解解决问题的方法
- 了解如何改正
科学调试方法的步骤
- 通过重复实验收集数据
- 建立假设以解释尽可能多的相关数据
- 设计实验以便证实或否定假设
- 证实或否定假设
- 按要求重复以上步骤
发现错误的有效方法
- 固定错误
- 确定错误源
- 改正错误
- 测试错误
- 寻找类似错误
修改错误
- 发现错误比较困难,修改错误是比较容易的, 越是容易就易出错,以下是一些减少出错的方法:
- 改正问题前真正了解实质
- 理解整个程序而不是了解某个问题
- 确认错误
- 放松自己
- 保存初始源代码
- 修改错误问题,而不是症状
- 每次作一个修改
- 检查相似错误