狗万登陆 >狗万登陆 >元调试 >

元调试

2019-09-04 08:08:02 来源:环球网
A+ A-

这次从Meka AG的博客做了贡献了。

元调试

你听说过“元调试”这个词吗? 也许不是。 我刚做了w。 但是如果你长时间做一定规模的软件开发,可能不明白?

建立一个重新调试程序很重要。 最终用户经常报告“有时很奇怪”的调试是不可能的。 您必须调查什么样的程序以及它在您操作时的工作方式。 如何解决问题。 一旦你知道,如果你只是追逐代码,你可以摆脱错误。

但是,在实践中很难研究这种复制过程。 有微妙的时间,内存释放错误和指针操作错误不会立即立即发生,并且通常情况下其他地方会受到无声的不利影响。 然后,故障发生的地方和原因完全不同的地方并不罕见。

与过去相比,系统和编程语言已得到改进,使得难以调试的错误很多,但它们仍然不是零。

* * *

在这种时候,即使你只是追逐代码,你也可能无法揭露贿赂。 可以这么说,你需要侦探般的推动力和侦探小说的推理能力。 令人失望的是,工程首先必须依赖这些东西,但它无法帮助。

推理最终是分析数据的能力,重要的是收集数据。 做一个假设,如果这是原因,它应该是一种现象,所以操作它并确认它确实存在。 在这种情况下,如果要可靠地再现它就足够一次,但如果再现性不好,则需要编号。 动员并操作大量测试人员。 人海战术。

此时,由于没有一个可疑的地方,做出多个假设很重要,例如,如果一个假设可以在3天内完成,那么3个假设的证明也将是3天有很多。 换句话说,一次进行多个测试效率要高得多。 如果逐一检查,则需要9天3天×3次。

* * *

嗯,这就是重点。 如果你不习惯调试这种事情,你只会在你想出最可疑的部分时注意到。 如果它击中它会很好,但如果你摆脱它,想想第二个最可疑的部分并测试它。 如果不好,那就是第三个。 因此,有必要引入三次人海战术,时间和成本效率低下。

你应该从一开始就列出多个可疑候选人(上面的例子中有三个)并同时进行测试,但是人类思维很难,而且不能轻易完成。 如果你认为即使在侦探小说中“这个家伙是可疑的”,也不可能认为其他人可能是罪魁祸首。

通过遵循这种思想的人类习惯,产生了“不在乎”。 一个可疑的人出现在早期阶段,并引起读者的注意。 这个角色也在中间阶段被杀死,读者对“好吧!”感到困惑。 最后,真正的罪魁祸首被告知,并且表明基础已经做好了。 “嘿,我写道,这个人是罪魁祸首。” 读者只能说“麦”。

* * *

如果你读一部侦探小说很有趣,但是对于调试来说推翻预测并不是一件好事。 我认为这种人类习惯是试图在我现在掌握的信息中给出最好的答案。

然而,即使我们查看实际案件和事故的报告,通常也会出现第一份报告因此而导致的错误报告。 错误报告也被记者误解,或者另一个原因的错误被认为是单个错误,可信度不一定是100%。

如果你坚持包含超过必要的错误事实的信息并考虑满足它的最佳答案,那么结论将是错误的。

始终需要感觉每一条信息都“可能是错误的”或“可能被推翻”。 例如,假设存在三个条件,而不是通过考虑满足三个的不合理的正确答案而一次性下注,最好考虑一个正确的答案,其中必须满足其中两个并且不小心检查。并迅速得到正确的答案。

换句话说,三个故障报告中的一个还必须考虑故障报告本身错误的可能性。 错误报告本身怀疑可能存在错误...元调试。 拥有这样的观点很重要。

写作:本文由 。

您贡献的文章截止日期为2014年3月12日。

责任编辑:浦於猪 CN037