如何调试程序
Bug的调试过程常常是充满艰辛的,你永远无法知道自己到底要花多少时间,所以这里提几个方法和建议,希望给你带来帮助。
1 排除法
要找出问题究竟出在哪里,可以先确保程序绝对正确的部分。你可以使用断点工具,或者在程序中加入打印变量的语句来查看程序运行中的状态。
断点即为在程序中设置一个停顿,程序即会在此处暂停,但依旧保持运行状态,系统不会回收该程序占有的内存。IDE中的断点工具大多会提供查看当前变量的界面和“向下一步”或“进入函数”之类的命令选择。在断点调试状态下,你可以逐条执行语句并观察变量值的变化。
2 分而治之
在编程时,我习惯先调试好一个部分的功能,之后再封装为一个函数,定义好输入输出。如果你在第一次运行主程序时已经敲了超过了100行代码并没有任何小规模调试,那么出错的可能性几乎是百分之百。
你可以试着在编写阶段就采用分而治之的思想,这样在小模块出错时,你也能有一个相对简单的例子在网上或线下提问咨询。
3 高效的的搜索
如果你无法打开google,必应的英语搜索也是不错的选择,会给到你比百度更多更有针对性的搜索结果。大多数情况下,在搜索栏直接贴上报错信息就能找到相应的解答。同时,你可以去查询官方文档,这是最为可信的资料,也可以尝试到官方论坛的问答区进行搜索。记得使用Ctrl+F搜索页面或文档内容,这会为你节省不少时间。
4 休息一下
长时间困于一个问题可能会让你恼火烦躁。如果你觉得自己失去了耐心,甚至开始开始东改西改,希望靠运气来得到正确结果时,是时候停一下了。站起来走走,喝点水,忘掉遇到的麻烦,做点能让你放松的事,等你调整好了再工作。相信我,这真的很有用,你会发现那些之前百思不解的问题真的不难解决。
5 练习,还是练习
编程是一门技术,像其他的技术一样,经验的多少部分决定了工作效率。看到一个问题,你会有多个对于原因的猜想,经验丰富的程序员会有更全面的猜想,能判定并验证可能性最高的猜想。通过持续的练习,你可以积累更多经验,遇到问题不慌张。