这个问题一定要回答呀!每个程序员都有在debug过程中被虐得很惨的经历,但是没有虐情哪来进步呢,我可以谈谈我的一些建议吧~希望每个程序员都能被温柔对待~
首先,debug一定要靠自己呀!
原因有四:1. 如果是别人给你指出你的程序哪儿错了,你自己不会有任何收获,你下一次依旧会犯同样的错误。
2. 经过长时间努力Debug 获得的错误,印象更深刻。
3. Debug 能力是面试的考察范围。
4. 锻炼Debug 能力能够提高自己的Bug Free的能力。
其次,我想介绍一下debug的基本步骤:1. 重新读一遍程序。按照自己当初想的思路,走一遍程序,看看程序是不是按照自己的思路在走。(因为很多时候,你写着写着就忘了很多事儿)这种方式是最有效最快速的 Debug 方式。
2. 找到一个非常小非常小的可以让你的程序出错的数据。比如空数组,空串,1-5个数的数组,一个字符的字符串。
3. 在程序的若干位置输出一些中间结果。比如排序之后输出一下,看看是不是真的按照你所想的顺序排序的。这样可以定位到程序出错的部分。
4. 定位了出错的部分之后,查看自己的程序该部分的逻辑是否有错。
在第4步中,如果无法通过肉眼看出错误的部分,就一步步“模拟执行”程序,找出错误。
最后,要是debug还是不行怎么办?如果已经 Debug 了一整天,还是不行,那么兄弟,你可以考虑向他人求助了~
能力提高是一个循序渐进的过程,这就给自己定个小目标:做一个debug的小能手~
欢迎关注我的微信公众号:ninechapter