软件调试策略指南
1. 调试的科学方法概述
调试软件时,可运用科学方法定位缺陷。主要步骤包括用实验测试预测结果,若预测与实验结果不符,则需重新开始。具体到隔离程序缺陷,可进一步细化为以下步骤。
2. 收集相关数据
尽可能收集多的调试证据,如 bug 报告、电子邮件、日志文件,甚至屏幕截图。若能复现 bug,还可借助各种诊断工具创建自己的数据集。
- 数据保存 :如同优秀的侦探一样,要将数据存放在安全的地方,防止其被污染。通常,可将数据文件权限设置为只读;在涉及重大利益的极端情况下,可将数据刻录到光盘并锁在柜子里。
3. 形成假设
假设是基于现有数据做出的合理推测。即利用第一步收集的数据,推测导致 bug 的原因。提出合理的假设需要进行数据分析和发挥创造力。若时间允许,可通过头脑风暴尽可能多地提出不同假设。不过,在这个过程中要注意奥卡姆剃刀原则,该原则由 14 世纪的威廉·奥卡姆提出,用现代英语表述为“能用较少假设完成的事,用较多假设去做是徒劳的”。
4. 进行实验
实验的目的是在新场景下检验假设。若假设合理,最终会发展成理论。理论是一个概念框架,既能解释现象,又能进行预测。理论的成功与否取决于其预测准确结果的能力,仅能解释历史数据的理论是没有意义的。
- 预测与实验 :若假设合理,可据此进行预测,然后进行实验并将结果与预测对比。若实验结果与预测不一致,需修改假设或构建全新假设;若在一定敏感度范围内一致,假设就有可能发展成理论。
- 常见实验方法 :在软件调试中,预测的
超级会员免费看
订阅专栏 解锁全文

1943

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



