欢迎收藏。当你遇到非常难缠的Bug时,不妨回来这里看看…
编程本来是一项非常优雅的工作,而程序员,也理应是那种如艺术家一般,不断写出极具观赏性和创造力的作品的职业。 然而自从工作之后,却发现身边的程序员大多深陷赶迭代出口和修复紧急Bug的泥潭。经常可以看到下面这些场景:
- 修复了一个Bug,却引入了更加致命的Bug
- 不停的修改代码,重启服务器,Bug依然没有修复
- 补丁打上去后,Bug依旧存在,定位了很久,最后发现是补丁打错地方了
虽然我们应该尽可能保证提交上去的代码里Bug越少越好,但是当Bug真的出现时,我们往往十分慌乱,像一只无头苍蝇一样,调试的过程毫无章法。
直到最近偶然看到了这本书——《调试九法》,这是我看到的第一本讲调试方法论的书,回想自己之前在解决Bug时的经常遇到的手足无措,像无头苍蝇一般四处乱撞,最后瞎猫碰上死耗子般地解决了Bug,我毫不犹豫地买下这本书。
这是一套系统的调试理论。
希望本文介绍的这套调试学的知识,能够帮助你在今后遇到Bug时,思路更加清晰,心情更加淡定,从容不迫地去解决问题。
调试法则总览
这套方法论可以总结成一句话:
调试是一门科学,任何不懂原理就进行的操作都是耍流氓。
这句话可以分为两个步骤进行实践:
准备工作:
- 如果你要调试这个系统,首先你必须先理解它。
- 在开始调试之前,检查一下“插头”,别因为一些简单的问题而瞎忙活半天。
- 确定“插头”没有问题之后,你需要重现Bu