全国热线

400-080-3312

全国监督投诉热线:9:00-23:00

学码思程序员老司机传授改bug的通用套路

很多人还没有找到改bug的技巧,今天南京学码思java培训机构程序员老司机来为大家传授改bug的通用套路,一起来学习一下。

新手程序员在开发过程中常会遇到这样那样的问题,其中一大难点就是找bug,尤其是一些大型系统的复杂代码,要让一个新人来找出bug,对于双方来说都是劳民伤财的事,不仅可能拖慢项目进度,还会让新手程序员备受打击。其实这是大家还没有找到改bug的技巧,今天南京学码思java培训机构程序员老司机来为大家传授改bug的通用套路,一起来学习一下。

学码思程序员老司机传授改bug的通用套路

1.IDE调试

根据项目特点和语言特点选择一个非常合适的IDE,比如C++程序员喜欢用的莫过于Visual Studio了,这款微软开发的IDE,自从研发出来,就被称为宇宙第一编译器,能编译调试C/C++、C#、F#、Python、JavaScript、Qt、iOS等多种语言的开发。目前的VS2017还原生支持远程跨平台的软件开发,这无疑给常年奋战在linux/Unix黑匣子开发环境,使用G++调试的C/C++程序猿们带来了福音。


2.重构大法。

如果你发现无论如何也找不到BUG,而且代码只是复杂,本身不是很长,直接重写代码吧!重构大法是解决爆炸性bug的绝招。


3.printf大法

大家都说printf大法(也称cout大法)好,把需要验证的参数打印出来,不仅直观,而且方便调试。


4.日志大法

日志大法,法力无边。一个成熟的系统少不了日志模块,懂得和善于使用日志大法调bug的同学,恭喜你,你已经步入中级程序员的行列。


5.小黄鸭调试法

小黄鸭不懂程序,所以我们可以向他解释每一行程序的作用,以此来激发灵感。


6.二分定位法

把程序逻辑一点点注释掉,看看还会不会出问题,类似二分查找的方法,逐步缩小问题范围。


7.模拟现场法

模拟现场,程序员可以反问自己,如果我要实现bug描述的现象我要怎么写代码才行?比如:我遇到一个死锁问题,但是检查代码发现所有的锁都是配对的,没有忘记解锁的地方,而且锁很简单就是一个普通的临界段,保护几行赋值语句而已。这样的代码怎么写才能让他死锁呢?如果故意制造这样一个现象,只有在上锁的时候强制杀掉线程了。既然这样就可以去看看有谁强杀线程了没有。


8.制作调试工具

此方法在很多大厂比较常见,一个是快速迭代的要求,一个是大厂的通用框架比较成熟,当然工具的适用性比较强。


9.优先解决可重现的bug

可重现的bug,优先解决,多调试测试几次,把容易解决的bug先解决掉,亦可以减少bug数量,也可以减少干扰。


10.放大现象。

有些bug不是很明显,那么就想办法增加他的破坏性,把现象放大,这在我们的系统压力测试时会经常遇到一种方法。千万别觉得自己的系统就几千日活,就把压力测试压得很低,结果,实际上线时,系统压力过大宕机的情况不在少数,这种问题很多大厂也出现过,还记得有一年抢红包,抢了点不开的事吗?


以上程序员老司机传授的修改bug的几个技巧,希望能给新手们一点有用的指导,多学一些技巧,开发效率更高,也能少走一些弯路。如果你对于编程开发还有什么疑问,想学习更多开发技巧的话,可以直接咨询在线老师,也欢迎前来南京学码思java培训机构实地考察了解,可获得免费java教程和学习资料,还能试听感受学码思课程,亲身体会这里的学习氛围。


上一篇:Java中十大高效的java库盘点
下一篇:Java如何实现回调函数

相关推荐

免费试听 | 学费咨询 | 在线报名 | 申请补贴 | 软件培训 | 网站地图

2016-2020 南京学码思教育科技有限公司 .All Rights Reserved

苏ICP备16033487号 www.njxms.com.cn

全国热线

400-080-3312

全国监督服务热线:9:00-23:00