检查的对象不是开发库,也不是JDK,而是你自己。
程序运行不正常的时候通常要调试, 调试技术(Debugging)
是每位开发者必须要掌握的一项技能。然而,掌握调试技术非一日之功。幸运地是,JDK 为
Java
提供了很多调试工具(例如
jstack
)以及第三方工具(比如
JMeter
)。像 IntelliJ 或 Eclipse 这样的 IDE 都集成了测试工具,利用好 IDE 的调试功能非常重要。下面这些建议可以加速掌握调试技术:
- 别怕读代码,尤其是别人的代码。尽可能深入代码背后的运行机制。
- 不要甩锅给 JDK 或函数库。永远不要假设 Java 出了问题,这么干的结果通常都会打脸。百分之九十九的可能 bug 都来自你自己的代码。
- 可以假设,但是不要自信,因为我们都可能有盲点。
- 不要一直盯着问题,离开工位四处走走,回来的时候会变得思路清晰(锻炼、睡个好觉、见见朋友——休息一下)。
- 不要靠运气编程,换句话说,不要写(拷贝)那些你自己也搞不懂的代码。
-
Google 是你最佳的编程伴侣。( 译注,可以是你其他熟悉的搜索引擎
)
-
如果不清楚某个Java特性,查一下 JDK
javadoc
。
-
设置合适的 log 级别 ( info
, warn
, error, debug
)。
- 设置断点可以让我们对程序有一个全局了解。调试循环的时候,条件断点非常好用。
-
用 JMeter
这样的工具做负载测试,或者用
jstack
捕获线程转储(dump)文件。
- 在开发和准生产环境下,可以远程调试程序。
- 如果上面的建议都无效,可以这么干:首先,精简代码;接着,检查程序运行环境;最后,检查开发库。
调试是一门很难掌握的技术,但熟能生巧。所以,尽可能找机会多练习吧!
原文链接: dzone
翻译:ImportNew.com -唐尤华
译文链接:[]
原文
http://www.importnew.com/30591.html