东半球最先进的debug技巧
不论是什么行业里,能让人最兴奋的事情通常都是解决新奇的、高难度问题带来的刺激。在我的工作中,经常会遇到很多bug,乍一看,它们都是不可能的。不是不可能解决,而是完全不可能出现。就好象最前沿的科技揭示了一个新的奇怪的逻辑现象,以至于人的大脑完全无法理解。
当然,这里我总结的这些bug都是很独特的,如果你想说是否能有某种最先进的系统性的方法能将这些bug归类,统一解决,那是愚蠢的,就好象一个人无法认识到自己在犯错而避免过错一样。不管怎样,下面的这些debug原则对我是十分有效的,而且我相信,对大多数程序员也都是有效的。
- 你改错了文件
- 你改对了文件,但却是在别人的机器上
- 你改对了文件,但忘了保存
- 你该对了文件,但忘了重新编译
- 你认为你把那个东西开启了,但实际上你把它关闭了
- 你认为你把那个东西关闭了,但实际上你把它开启了
- 会议中,你应该用心听。
- 你运行了错误的版本
- 你运行了正确的版本,但却是在别人的机器上
- 你改正了问题,但忘了提交
- 你改正了问题,也提交了,但忘了push到版本库中
- 你改正了问题,也提交了,也push了。然而,很多用户的工作都依赖于之前有问题的版本,于是你必须回滚。
我非常虔诚的向大家奉送这些debug原则,任何一次debug都不可能只使用其中的一个方法解决。我真挚的希望大家通过对这些debug原则的思考能获得意想不到的收获。
你也许感兴趣的:
- 【外评】 我可以修好这台电脑,老板,但我需要玩上几个小时的游戏才能做到
- 关于 Node.js 调试,你需要了解的一切
- 程序员们,曾经是否有个bug让你开始怀疑人生
- 译 | 关于 debug 的 9 条给人启示的语录
- JavaScript反调试技巧
- 我和一个搞不定的bug的故事
- 13年的Bug调试经验总结
- 关于JavaScript调试的十来个小技巧
- 记一次灵异般的 Bug 调试经历
- 当cpu飙升时,找出php中可能有问题的代码行
哈哈。
忘了重新编译的前面有错别字,该,改。