8个BUG解决方法,告别加班!!

解决bug的方式


一:最小化定位


大家应该都能理解,就是用排除法尽可能把没有问题的代码排除掉,这里可以使用二分法排除,然后把有问题的模块拎出来,单独进行单元测试,所以代码的模块化解耦是非常重要的,解bug套路。

二:合理打log


很多正在运行的线上系统都没有办法给你断点调试的,这种时候合理打logo就非常重要了。有的人喜欢把什么内容都写进logo,这样导致logo文件巨大,几个g的logo了解一下,这里给大家推荐几个打log的建议:

按日期分文件 
巧用分隔符
避免不必要的浪费。

三:旧版本代码比较

如果是新版本新出的bug,最好和旧版本进行比较,一般写代码都有版本管理,例如g的或s5n,合理利用代码比较功能,看看某个类或者什么方法新增了什么代码,删除了什么代码,这样比一比就可以分析出问题所在的解。

四:活用抓包

这类问题经常出现于前端后端PK中,由于现在很多框架已经封装了很多层,收发报文都很难通过断点进行查看,哪怕断点都会导致阻塞,影响调试效果。

所以通过抓包软件,例如wire、shacks,可以很方便地看到豹纹,然后拿着白纸黑字就可以看出是谁的问题了。

五:利用各种工具

因为不同的语言行

业编程工具都有所不同,我仅列举我自己常用:

1.debugview
查看程序输入输出的内容的工具。

2.depend
查看程序dll依赖的工具。

3.the Jason dot com
在线Jason工具能做很多Jason相关的事情解.

4.Winhex
查看文件16进制的工具

六:活用搜索引擎

这里建议大家使用英语搜索Google或者是being,你会发现很多有价值的答案。如果是框架层的问题,恰好这个框架有上句号,尝试搜索该项目的意思,也会有很多意外发现。

七:求助大神

这里像我们的优快云、知乎、或者奋斗君的交流群每天都活跃着很多大佬的,建议大家在求助别人的时候,不要把代码直接扔过去,起码你的问题自己尝试过的方法已经得到了什么结果,什么点解决不了,说清楚。别人的时间都是很宝贵的,充分尊重别人,才能得到别人的用心帮助。

八:套路本地化

如果是线上的项目,建议将关键数据当不到本地,当然很多线上数据库非常大,如果可能请导出的时候做一下筛选,把关键数据导出来。这种方法适用于刚上线不久试运行的项目,通常正规化管理的是不允许程序员直接接触线上数据的。

好了,这是我自己总结的8个解决bug的方式,如果你们有更多的方法,欢迎评论区讨论,如果觉得有道理,欢迎给奋斗君一个免费的赞,如果帮到你了,请给我一个三连,对大家来说只是轻轻一按,但对我们来说,非常重要!感谢您能看到这里!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值