很多时候新人问的问题,其实他自己琢磨琢磨,多花半天,甚至两三天也能解决,但总是习惯问。而且不善于总结方法。

编程语言有很多Java、Golang、PHP、C++、.net,如果每个都记得滚瓜烂熟,一点问题都没有。难度很高!即使同一门语言,也很难

记清楚所有语法。所以为什么会有一个经验问题,知识广度问题。同时也存在一个要学会定位问题的问题。

经验丰富,则查找资料,解决问题方法丰富。

知识广,则查找资料,提问题准确。

定位准确,则更容易针对问题解决问题。

在这里写一下早年总结的一下如果遇到问题如何自己定位的思路:

1、删减法

删代码,删到发现这个bug消失,那么很好,你就知道是哪一行或者哪几行。

常用于jsp页面使用、sql问题定位、了解业务逻辑

2、替换法

如果一直怀疑某些参数问题,可以采用替换法,将代码中的参数替换或者常量写死。

常用于参数,具体方法,具体某一行问题定位。

3、更换jar包法

替换jar包,测试

常用于怀疑第三方jar包有问题

4、模拟测试法

将参数写死,模拟发出请求。这个就不用多说了

5、更换环境法

可以更换服务器如tomcat7、tomcat8.可以更换jdk如jdk1.7,jdk1.8。

6、打日志

每一行都打上日志,根据打印结果跟踪分析。过后不要忘了删除日志。

7、查百度

哈哈,这个就不用说了。

8、查谷歌

如果度娘不行,就去谷歌吧,问题定位相对准一些。

还是强调,要多折磨自己,多憋着。同时要会多记笔记,多总结!这样才能不断成长。

补充

1、如果是app应用,服务端一定要学会使用filder进行抓包,这对你定位问题帮助很大。