Questions tagged «debugging»

调试是在程序运行时检查程序状态的过程,通常使用调试工具进行检查,并尝试查找导致程序异常运行的错误。

1
美元符号蓝调:JavaScript和PHP
我从小就对C ++和Java进行编程,那里的一切都是安全而美丽的。编译器一定要检查我是否流浪。当然,每个人在大学里都做了一点Perl,但我没有吸气。这些天的孩子们全都在后端使用PHP,而在前端则使用Javascript。在尝试时髦时,我也这样做(用于Web开发)。我一直遇到的问题是,我不小心在Javascript的常规变量前添加了美元符号($),当然没有人说什么,因为这是jQuery对象经常使用的合法语法。 是否有任何调试工具或开发技巧来捕捉这种美元符号的混乱?您是否经常犯同样的错误,如何从情感上处理错误?Chrome开发者工具并不总是会看到这是Javascript错误。我使用PhpStorm和Emacs进行开发,但是这些并没有引起我的愚蠢,尽管我怀疑Emacs确实可以,但是选择不告诉我有关情况。 如果您认为这个问题很荒谬,我认为您是对的。但是我们生活在一个变量前面有美元符号的世界。在这样的世界里,没有什么是荒谬的。

10
为什么不使用错误一词代替异常呢?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 如果我们将异常称为错误,那么为什么不首先将其称为错误而不是异常呢? 如果在代码中将其称为异常,则在发生时将其称为错误。那么,为什么不首先将其称为错误? 感谢您的任何回答或评论。

9
“绷带”修复有多普遍?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 想象以下情况: 您已经检测到您的(或其他人的)程序存在错误-给定特定输入时,函数产生错误的结果。您检查了一下代码,找不到任何错误:输入该命令后,它似乎就会陷入困境。 您现在可以执行以下两项操作之一:您可以进一步检查代码,直到找到实际原因为止;或者 或者您通过添加一条if语句检查输入是否是此特定输入来打绷带-如果是,则返回期望值。 对我来说,使用绷带是完全不能接受的。如果代码在此输入上的行为异常,那么您错过的其他哪些输入会对它产生奇怪的反应?这似乎根本不是一个解决办法-您只是把问题抛在了脑后。 由于我什至不考虑这样做,我对教授和书籍经常提醒我们有关如何使用“绷带”修复方法不是一个好主意感到惊讶。因此,这使我感到奇怪:这些“修复”到底有多普遍?

11
修复其他人造成的错误是一种好方法吗?
让我们假设一个由四个开发人员组成的团队正在构建应用程序的情况。在测试阶段,错误由用户报告。谁应该修复它们?提交错误代码的人,还是有空的人? 敏捷开发(scrum)中首选的方法是什么?
17 agile  debugging 

3
GDB如何暂停执行
您可能知道,我们可以使用GDB并在代码上设置断点来暂停执行以进行调试。 我的问题是,GDB如何暂停进程,并允许您使用i r例如查看寄存器的内容。这些寄存器不是经常被其他OS进程使用吗?他们怎么不被覆盖? 它只是内容的快照,而不是实时数据吗?
16 c++  debugging 

7
偶尔发生错误,但优先级高
我正在从事一个CNC(计算机数控)项目,该项目借助激光将形状切割成金属。 现在我的问题是,有时(每20天奇数次要1-2次)切割是否出错,取决于设置的是什么。 但这会造成损失,因此客户对此并不满意。 我试图找出原因 包括日志文件 调试 重复相同的环境。 但不会重复。 暂停并继续操作将再次使其平稳运行,而不会再次出现该错误。 我该如何解决这个问题?我应该将其声明为硬件问题吗?

11
如何教您的用户/客户发送更好的错误描述
我经常不得不与正在报告应用程序错误的客户或用户打交道。大多数情况下,它们的内容是无用的 错误!!! x不起作用 没有更多的信息。 为了解决问题,我必须要求它们的每个细节,这通常比解决问题本身要耗费更多时间。其他人以不理想的格式发送信息,例如(数据记录的快照,而不是错误的)屏幕截图,尽管它们可以发送链接(我们可以访问系统),等等。 您如何告诉用户/客户更详细地描述问题,从而使双方的整个过程都更加容易? 编辑 这个问题更多的是关于社交技巧,而不是如何以编程方式收集日志和错误信息。我知道以下事实:这应该是好的软件设计的一部分。

2
程序运行时如何调试/更改Java代码?
我刚刚看了一段视频,显示Notch(以Minecraft闻名)如何在其运行时调试和更改Minecraft。他暂停游戏,更改代码中的某些内容,然后取消暂停游戏,使更改立即生效,而无需重新启动程序。 这是如何运作的?使用哪种技术来实现这一目标?
15 java  debugging 

16
如何减少调试时间?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 遵循帕累托规则,程序员仅将20%的时间用于真正有用的事情。 我花了80%的时间进行调试,修复一些小问题,以使所有工作正常进行。 有没有办法花费更少的时间进行调试?

15
真正的程序员使用调试器吗?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 如果有经验的程序员实际上曾经使用过调试器,以及在什么情况下使用过。尽管在回答这个问题时我曾说过“几个月”,但我的意思可能是“几年”,但实际上我并不使用调试器。因此,我要回答的具体问题是,作为经验丰富的程序员,您将在哪种情况下使用调试器?
15 debugging 

5
我应该发布源代码来修复错误吗
我正在构建的应用程序中存在一个错误。我问了一个关于SO的问题,其中一个用户要求我发布或将所有代码发送给他,以便他可以查看。 我完全理解要求。这是有效且可以理解的。但是,我对是否应该存有疑问。显然,我给了他/她王国的钥匙,如果他/她会做出恶意的事情,我将没有任何追索权。 我还想补充一点,我的意思是不尊重提供帮助的用户。我只是在表达担忧。 我确实想修复我的错误,但不能保证此人可以修复它。 我应该发布完整的源代码并希望获得最好的结果吗?还是保留它并尝试自己解决? 你会怎么做?

8
尝试用软件调试问题/问题/错误时,通常使用什么过程?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 大多数人似乎将调试视为一门艺术,而不是一门科学。对于这里将其视为一门科学而不是一门艺术的人们来说,遇到新的问题/错误/问题时,通常使用什么流程?


3
如何影响开发人员的错误优先级并相应地加以对待?
我们正在执行一个错误流程。 我们有3个错误级别: P1错误:阻止用户工作的错误。他们必须当场解决。 P2错误:有影响但用户可以使用的错误 P3错误:不会影响用户并可以在其中工作的错误。 P1是强制性的,必须当场处理。但是对于P2和P3,我们将根据具体情况进行判断。 我们拥有3个级别,因此团队倾向于根据客户的要求进行更紧迫的新开发,而不必处理P2和P3,这几乎很紧急。 问题如下: 我是否应该添加另一个优先级,例如拥有P4? 我是否还应该像本周一样为他们指定处理非紧急票证的目标,当不分配编码任务时,您应至少处理1个P2? 当前,我们没有像我上面提出的目标,但是我担心的是给他们这样的目标可能是残酷的。可以确定的是,我需要与他们讨论目标,团队喜欢参与讨论,尤其是在设定目标时。 更新: 我从相似性的角度提出了这个问题。但是,它根本不相似。 我的问题是如何让人们处理错误,而又不施加严格的议程却仍要解决它。因此,不,所隐含的问题对我没有帮助。不过还是谢谢你

3
如何找到实现特定功能的源代码?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我想知道有什么技术可以在桌面应用程序上找到哪些代码实现了特定功能。 我是一名初级开发人员,仅具有围绕Web编程的专业编程经验。在Web中,这样做更容易。例如,您使用浏览器工具“检查”按钮,然后单击该按钮即可看到正在执行的操作。然后,假设您拥有完整的源代码,则可以深入了解调用的层次结构。 但是如何在桌面应用程序中做到这一点?至少不必深入研究完整的代码库?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.