Java调试检查表

检查的对象不是开发库,也不是JDK,而是你自己。

程序运行不正常的时候通常要调试,调试技术(Debugging)是每位开发者必须要掌握的一项技能。然而,掌握调试技术非一日之功。幸运地是,JDK 为 Java 提供了很多调试工具(例如 jstack)以及第三方工具(比如 JMeter)。像 IntelliJ 或 Eclipse 这样的 IDE 都集成了测试工具,利用好 IDE 的调试功能非常重要。下面这些建议可以加速掌握调试技术:

  • 别怕读代码,尤其是别人的代码。尽可能深入代码背后的运行机制。
  • 不要甩锅给 JDK 或函数库。永远不要假设 Java 出了问题,这么干的结果通常都会打脸。百分之九十九的可能 bug 都来自你自己的代码。
  • 可以假设,但是不要自信,因为我们都可能有盲点。
  • 不要一直盯着问题,离开工位四处走走,回来的时候会变得思路清晰(锻炼、睡个好觉、见见朋友——休息一下)。
  • 不要靠运气编程,换句话说,不要写(拷贝)那些你自己也搞不懂的代码。
  • Google 是你最佳的编程伴侣。(译注,可以是你其他熟悉的搜索引擎
  • 如果不清楚某个Java特性,查一下 JDK javadoc
  • 设置合适的 log 级别 (infowarnerror, debug)。
  • 设置断点可以让我们对程序有一个全局了解。调试循环的时候,条件断点非常好用。
  • 用 JMeter 这样的工具做负载测试,或者用 jstack 捕获线程转储(dump)文件。
  • 在开发和准生产环境下,可以远程调试程序。
  • 如果上面的建议都无效,可以这么干:首先,精简代码;接着,检查程序运行环境;最后,检查开发库。

调试是一门很难掌握的技术,但熟能生巧。所以,尽可能找机会多练习吧!

原文链接: dzone 翻译: ImportNew.com - 唐尤华
译文链接: http://www.importnew.com/30591.html
[ 转载请保留原文出处、译者和译文链接。]

关于作者: 唐尤华

我喜欢程序员,他们单纯、固执、容易体会到成就感;面对压力,能够挑灯夜战不眠不休;面对困难,能够迎难而上挑战自我。他们也会感到困惑与傍徨,但每个程序员的心中都有一个比尔盖茨或是乔布斯的梦想“用智慧开创属于自己的事业”。我想说的是,其实我是一个程序员。(新浪微博:@唐尤华

查看唐尤华的更多文章 >>



相关文章

发表评论

Comment form

(*) 表示必填项

还没有评论。

跳到底部
返回顶部