调试技术 -- 调试策略与原则

背景

看了部分软工视频,对软件调试技术有了些许的了解;

也对代码的调试有了自己的见解。

调试策略

  1. 强行排错
    是一种最常用的、效率较低的调试技术。它不需要过多的思考,直接打印出内存中 的内容,希望从中找出错误原因所在。在程序的特定部位设置打印语句,跟踪程序的执行,监视重要变量的变化;也可以利用某些程序语言的调试功能或专门的交互式调试工 具,通过设置断点等方法分析程序的动态过程。在采用这一技术时,必须有明确的目的, 尽量减少无关信息的输出,以提高设计效率。

  2. 回溯法
    回溯是在小的程序中常用的一种有效的调试技术。具体做法是:分析错误表象,确定症状的位置,人工沿程序的控制流往回追踪源程序代码,直到找到错误原因为止。对于小程序, 回溯法可能把错误范围缩小到程序中的一小段代码,仔细分析这段代码不难确定出错的位置。不适合大的程序。

  3. 归纳法
    归纳法是从个别现象推断出一般性结论的思维方法。采用归纳法调试程序的过程为: 首先把和错误有关的数据组织起来进行分析,以便发现可能的错误原因。然后导出对错误 原因的一个或多个假设,并利用已有的数据来证明或排除这些假设。如果已有的数据尚不 足以证明或排除这些假设,则需设计并执行一些新的测试用例,以获得更多数据。

  4. 演绎法
    演绎法是从一般原理或前提出发,经过排除和细化的过程推导出结论。采用这种方法来调试程序时,首先设想出所有可能的出错原因,然后试图用测试来排除每一个假设的原因, 如果测试表明某个假设的原因可能是真的原因,则对数据进行细化以精确定位错误。

调试原则

在调试过程中,心理因素的影响常常高于技术手段而占主导地位,许多调试原则主要 是基于心理学方面的问题。切骄切燥!由于调试工作有查错和排错两项任务,所以调试原则也分成相应的两组。

查错原则

评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值