对于代码调试(debugging)的释义以及进行调试的基本方法小结
【摘要】 我们在项目开发过程中,经常遇到需要进行调试的代码模块。对于初学者而言,手工跟踪最为有效和方便,一方面可以重新对于系统的内部逻辑进行一次梳理,另一方面还可以找到产生问题的地方。而对于高阶的开发者而言,手工跟踪的方式极大地浪费了时间,所以需要调试工具的帮忙。通过本文我将为大家介绍何为代码调试?如何进行手工跟踪和使用调试工具进行代码调试,调试工具又具备什么特性?
文章目录
- 前言
- 一、何为代码调试?
- 二、常见的代码调试方式
- 2.1、手工跟踪(hand trace)
- 2.1.1、适用范围
- 2.2、使用调试工具
- 2.2.1、Java 中的调试工具
- 2.2.2、调试工具具备的特性
- 总结
我们在项目开发过程中,经常遇到需要进行调试的代码模块。对于初学者而言,手工跟踪最为有效和方便,一方面可以重新对于系统的内部逻辑进行一次梳理,另一方面还可以找到产生问题的地方。而对于高阶的开发者而言,手工跟踪的方式极大地浪费了时间,所以需要调试工具的帮忙。通过本文我将为大家介绍何为代码调试?如何进行手工跟踪和使用调试工具进行代码调试,调试工具又具备什么特性?
查找和改正错误的过程称为调试(debugging)。
调试的一般途径是采用各种方法逐步缩小程序中bug所在的范围。
手工跟踪(hand trace)程序(即通过读程序找错误),也可以插入打印语句,显示变量的值或程序的执行流程。
这种方法适用于短小、简单的程序。
对于庞大、复杂的程序,最有效的调试方法还是使用调试工具。
JDK 包含了一个命令行调试器 Jdb,结合一个类名来调用该命令。Jdb 本身也是一个 Java 程序,运行本身的一个 Java 解释器的拷贝。
所有的 Java IDE 工具,比如 Eclipse 和 NetBeans 包含集成的调试器。调试器应用让你可以跟踪一个程序的执行。他们因程序的不同,但是大都支持以下特征中的多数:
- 一次执行一条语句:调试器允许你一次执行一条语句,从而可以看到每条语句的效果。
- 跟踪进入或者一步运行过一个方法:如果一个方法正在被执行,你可以让调试器跟踪进入方法内部,并且一次执行方法里面的一条语句,或者你可以让调试器一步运行过整个方法。如果你知道方法是可行的,你应该一次运行过整个的方法。比如,通常都会一步运行过系统提供的方法,比如,
System.out.println
。 - 设置断点:你可以在一条特定的语句上面设置断点。当遇到一个断点时,你的程序将暂停。你可以设置任意多的断点。当你知道程序错误从什么地方可能开始的时候,断点特别有用。你可以将断点设置在那条语句上,让程序先执行到断点处。
关于使用Eclipse进行断点调试的方法请移步这里——如何使用 Eclipse 进行断点调试? - 显示变量:调试器让你选择多个变量并且显示他们的值。当你跟踪一个程序的时候,变量的内容持续更新。
- 显示调用堆栈:调试器让你跟踪所有的方法调用。当你需要看到程序执行的流程的宏观图景的时候,这个特征非常有用。
- 修改变量:一些调试器允许你在调试的过程中修改变量的值。当你希望用不同的示例来测试程序,而又不希望离开调试器的时候,这是非常方便的。
本文给大家介绍了什么是代码调试,作为开发者,初学者和高阶应如何选择代码调试的方式,不同的代码调试方式又有何种不同,代码调试工具应该具备什么特性可以满足开发者需求。而现在我们常见的代码调试工具多集成到了开发 IDE 中,如 Eclipse 和 IDEA。在本文的 2.2.2 节给大家引入了如何使用 Eclipse 进行断点调试,那么你会使用 IDEA 进行代码调试吗?
我是白鹿,一个不懈奋斗的程序猿。望本文能对你有所裨益,欢迎大家的一键三连!若有其他问题、建议或者补充可以留言在文章下方,感谢大家的支持!
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)