程序员写的代码就不能没有Bug吗?是程序员能力的问题吗?

首先,没有程序员能写出没有bug的代码。电影里动不动就看到随便找一个程序员就能写出一个程序黑进某某系统,或者千钧一发之际改完程序立刻run起来就对准了木星(没错,就是《流浪地球》,虽然我也很喜欢李一一,但是我还是想说,代码写完/改完不经过测试就直接运行,基本等于找死,何况是对准木星那么庞大的项目,要是都这么厉害,阿里也不至于每年九十月就开始压测备战双十一了),我都内心一句忍不住马赛克。

程序员写的代码就不能没有Bug吗?是程序员能力的问题吗?

 

基于我的经验,我没见过身边哪个同事能没有bug,不管是新入职的实习生,还是待了5~10年的老油条,都是如此。我们说一个程序员的能力高从来不是说他交付的代码没有bug,因为他之前交付的代码没有bug,不代表他之后的也没有bug,人类不是机器,偶尔疏忽或考虑不周才是正常人。况且,如果他在完成代码之后,如果又花了大量时间去自查bug,这个时间投入的ROI还不如快速自查,把明显的bug修复掉,隐藏的小bug交给专门的测试人员去捕捉,把节约的时间用来多写点代码划得来,程序员做事情是要讲究性价比的。

那么bug和一个高能力的程序员之间是什么关系呢?

程序员写的代码就不能没有Bug吗?是程序员能力的问题吗?

 bug可以出现,但是同样的bug不能出现3次

所谓事不过三,不论是不是程序员,都需要吸取错误中的教训,如果第一次由于经验或者知识量不足,导致出现了bug,这个是可以接受的,只要保证下次不会再犯了,就没有人会为此而对你的评价有所降低。

快速的bug自查能力

写完代码之后,交给测试人员之前,通常要进行自查。这段时间内,如果你能够快速找出开发过程中考虑不周的漏洞,及时补上,那么也就相当于在bug存在之后,但是在被发现之前处理掉了。这就要求程序员有一个良好的思维跳出能力,从个人经验来说,这方面主要依赖细心以及经验,面对同样的代码,一个程序员老鸟通常能够快速定位bug的潜在点,这主要依赖于他们丰富的经验,说不定他们之前也犯过错,所以能够比你更快找到问题。

程序员写的代码就不能没有Bug吗?是程序员能力的问题吗?

 

​综上,所有程序员都会写bug,不同的是有的程序员能够吸取教训,使bug只出现一次,或者在bug被其他人发现之前快速修改掉。这个过程其实正是你的编程能力不断提升的过程,因此不要害怕bug,它们就像超级玛丽里的小乌龟们一样,看起来挡了路,但是踩了bug就能跳得更高。

 

猜你喜欢

转载自www.cnblogs.com/CQqf2019/p/10869208.html