在过去20年左右的调试器中是否有任何改进?当我启动pdb时,我觉得没有任何改变。我错过了一些巨大的东西吗?
近年来,调试器中增加了哪些创新?
答案 0 :(得分:2)
Visual Studio的调试器可视化是如此巨大的生产力,特别是在使用C#或C ++ STL时。它还具有块文本,html,xml甚至DataSet的预览器。 STL支持显示矢量,地图,集合和列表。
在VS2010中,使用parallel callstacks对多线程的支持也得到了很大改善。
当我必须在Xcode或gdb上调试时,我觉得我被拖回了黑暗时代(Xcode甚至不会在一半的时间内可靠地显示局部变量,并且显示unicode字符串是一场噩梦)< / p>
答案 1 :(得分:1)
有很多 - 就像在软件开发的其他领域一样。一个很好的例子是reverse-*
一组gdb
命令,最近在2009年被添加到gdb
。
答案 2 :(得分:1)
Visual Studio添加了IntelliTrace
这使您可以回放应用并查看历史变量的值,而不仅仅是应用的当前状态。
答案 3 :(得分:1)
我认为“调试器”已经持续了很长一段时间。大多数只是为您提供有关callstack,线程,本地,全局和可能的表达式评估的信息。该功能集非常明确,它可以工作,因此它没有太大变化。它可能不需要。
调试器可帮助您确定程序流程,因为许多其他诊断工具已决定关注非常具体的问题。不要局限于传统的调试器,而是让我们看一下诊断工具的整个空间,因为它们也可以帮助我们调试我们的问题。
肯定有更多的工具可以帮助调试非常具体的问题:分析器,网络流量分析器(WireShark,HTTPFox),许多SysInternals工具,甚至是/ proc。