2、修改错误的原则
��(1) 在出现错误的地方,很可能还有别的错误。经验证明,错误有群集现象,当在某一程序段发现有错误时,在该程序段中还存在别的错误的概率也很高。因此,在修改一个错误时,还要查一下它的近邻,看是否还有别的错误。
��(2) 修改错误的一个常见失误是只修改了这个错误的征兆或这个错误的表现,而没有修改错误的本身。如果提出的修改不能解释与这个错误有关的全部线索,那就表明了只修改了错误的一部分。
��(3) 当心修正一个错误的同时有可能会引入新的错误。人们不仅需要注意不正确的修改,而且还要注意看起来是正确的修改可能会带来的副作用,即引进新的错误。因此在修改了错误之后,必须进行回归测试,以确认是否引进了新的错误。
��(4) 修改错误的过程将迫使人们暂时回到程序设计阶段。修改错误也是程序设计的一种形式。一般说来,在程序设计阶段所使用的任何方法都可以应用到错误修正的过程中来。
��(5) 修改源代码程序,不要改变目标代码。在对一个大的系统,特别是对一个使用汇编语言编写的系统进行调试时,有时有一种倾向,即试图通过直接改变目标代码来修改错误,并打算以后再改变源程序("当我有时间时")。这种方式有两个问题:第一,因目标代码与源代码不同步,当程序重新编译或汇编时,错误很容易再现;第二,这是一种盲目的实验调试方法。因此,是一种草率的、不妥当的作法。
��
|