高效无聊的调试

我们大多数人不喜欢调试:它会困扰当前的任务和令人失望的事情,因为这暗示着我们是出于恶意完成工作的。

但是在现实生活中,没有错误的软件是不可能的。 如果是这样,让我们​​做点什么!

如何提高调试效率?

在某个时候,我意识到调试实际上还不错。 不仅如此,它将来还可以为您提供很多帮助。

但是要获得它,您应该遵循一些规则。

  • 永远不要先进行猴子调试。 通常,这意味着使用日志或调试器在执行的特定点获取运行时值。
  • 切勿在自动驾驶模式下进行调试。

人类是懒惰的。 他们试图找到解决问题的最短方法。 记录就是它。 我们不认为,只是一步一步地机械地在代码中寻找位置。 可能需要3分钟或3个小时。

然后找到。 固定。

我们没有考虑和分析真正的问题,因此不记得代码结构。 当再次发生时,我们必须从头开始。

这是一个真正的陷阱。 错误是隐性的,可能是一个非常深的漏洞。 最后,热修复导致越来越多的错误。

花了几分钟时间试图研究我们脑海中的问题,我们:

  • 刷新我们对建筑的知识
  • 对问题有更广泛的了解
  • 可以得出正确的结论
  • 防止其他此类问题(将来或已经存在)

甚至还有一项用于记忆训练的练习:在入睡之前,要记住今天发生的所有相反顺序的事情。 调试是一样的,只是记住与问题有关的所有东西。 有时很难甚至不可能,但是一定要尝试。

没有帮助 我需要更深入

我列出了一些步骤,可以帮助我进行调试:

  1. 这里没有魔术。 真。 是的,我知道您确定,您可以正确编写所有内容。 但是没有魔术。 是电脑 而不是量子。
  2. 您查看了错误的文件/数据库/存储库
  3. 最后的更改在哪里。 实现工作版本和损坏版本之间的区别非常重要。
  4. 不要停留在一个明显的点上,而是继续前进
  5. 扩大视野。 事情通过很多方式得到。
  6. 更精确地阅读可疑的地方
  7. 遍历代码,逐行执行
  8. 去喝咖啡
  9. 与某人谈论神奇宝贝
  10. 再尝试3-6
  11. 如果没有帮助,请使用调试器或日志。

怎么玩呢?

调试中最好的事情是可以对实际问题进行猜测。

就像一个谜。 每个人都喜欢谜语,只需要将错误当作谜题即可。 我们有导致错误行为的初始条件。 那就是你的谜语描述。 尝试至少写下问题的几种可能原因。

以这种方式解决问题将使例行程序成为游戏,成功比通过猴子调试解决方案带来更多的乐趣,在这之后,您可能会想:“地狱,我可能对此有一个猜测”

保重,没有错误!