8

你会推荐什么关于一般调试技术的读物?我对原则和最佳实践比对特定平台解决方案更感兴趣。作为记录,我主要使用 .NET(F#、C#),并涉足 Haskell 和 Ocaml。

其中一个周五晚上,我们在步行回家的路上与我的同事讨论了调试问题。得知可以从 VisualStudio 调试器查看和修改活动对象的状态,我感到很惊讶。他还提到,他认识的另一位开发人员“Java 大师”曾经向他展示了一些调试魔法,并给出了一篇关于调试的文章或小册子,这挑战了我同事最初的“没什么可做”的态度。花了比我希望的更多的时间来寻找虫子,我也准备好接受挑战了。有没有你会推荐的链接?

4

7 回答 7

4

我建议您阅读有关测试驱动开发(TDD) 的所有内容。来自维基百科的文章:

在新(“未开发”)项目上使用纯 TDD 的程序员报告说,他们很少觉得需要调用调试器。

从个人的角度来看,我的经验是,我编写的单元测试越多,我花在调试器上的时间就越少。

专门针对 .NET,这里有一篇关于使用 Attributes 轻松调试的好文章。

于 2009-09-12T20:26:40.053 回答
2

我强烈推荐 David Agans 的优秀书籍Debugging

虽然不是专门针对编程,但这些原则是通用的。这里的其中一项技术为我的诊断能力提供了最大的飞跃,即取消您的修复以证明您的修复已经纠正了问题。

于 2009-09-12T20:28:13.703 回答
1

它采用本机方法 (win32),但Advanced Windows Debugging是一本很棒的书。

于 2009-09-12T20:14:07.880 回答
1

我喜欢伊恩·泰勒的

于 2009-09-12T20:25:48.137 回答
1

我研究了很多调试书籍和想法。最好的可能是通过思考进行调试。我认为它以一种易于阅读的方式以合乎逻辑的方式涵盖了所有需要说的内容。

于 2009-09-12T20:34:29.680 回答
1

Tess Ferrandez 的博客如果它坏了,修复它应该与您在 .Net 调试中可能遇到的特定现实生活场景直接相关(通常涉及 ASP.Net),并且更普遍地发人深省。

John Robbins 的调试书籍博客同样值得一读。

Mike Stall 的 .Net 调试博客也是如此。

Mark Russinovich 的博客非常出色 - 他对Windows 内部结构的了解以及出色的取证技巧令人印象深刻。

于 2009-09-12T20:53:20.223 回答
0

我对调试的第一次介绍是本教程。它使用GDB来调试示例 C++ 代码,但原则是普遍适用的。我真正喜欢的是作者解释他对可能出错的思路的方式,然后是测试可能性所需的具体命令。这很有趣!如果您不熟悉调试,那么这是对该过程的深入了解。

于 2009-09-12T20:37:15.167 回答