分享一种 debug 思路,当需要在自己不熟悉的代码中定位 bug 所在位置时可以使用。
思路来源于二分查找法,每次排除一半代码。
比如有400行代码,注释掉前200行代码后 bug 还存在,说明 bug 不在这前200行代码中。以此类推,就算完全不对代码进行任何分析,也只需要几次操作就可以定位 bug 所在位置。
当然以上只是一种思路,实际调试中肯定不是直接无脑使用,一般先分析,将 bug 定位在一个大概的范围,然后确实没办法的时候才使用这种方法。
这种思路还可以用于查找 bug 是哪次提交代码造成的,比如线上版本是没有 bug 的,现在却有 bug 了,从上次发版到现在总共10此提交,如果把代码回退到第五次提交,bug 没有了,那就说明 bug 是存在于后五次提交的代码中。
上面讲的方法应该不少人在实际开发中使用过,并非什么奇淫巧技,只是我给它取了个名字而已。
装逼者的快乐是你体会不到的
网友评论