啥叫高质量的bugfix

这段时间一直在修bug。自己的bug没fix几个,天天给人分析bug。但是听的最多的就是:你们的Bugfix质量太低啊,要保证质量啊。

于是今天我就在想,啥叫高质量的Bugfix呢? 产生的side effect越少越好?改动越小越好?风险越小越好?思考后,心得如下:

其一:试想,如果你碰到一个bug,这个bug是由于设计上的缺陷引起的,但是只修了bug表面,没去深究更深层的东西,虽然你的Bugfix没引起更多的side effect。但是你的修改只修改了"一个bug", 就如同你身体里潜伏了一种大病,你现在表现的是头疼,你却只治理了头疼,,后果如何,可想而知。所以,修bug,一定要多多考虑,找到bug根源后也要多想想,为什么会引起这样的bug,我怎么样改代码能让以后更容易定位这个地方的bug,这个bug的根源还会引发其他什么样的潜在bug。对付有问题和潜在问题的代码,该出手就出手。也许你为一个bug大动干戈,会引起很多的side effect。但是你今天的改动,能为将来的埋下好的种子而不是。

其二:修一个bug,或者加一个功能的时候,也许你可以用硬编码或者work round的方式修改这个bug和加一个功能,也能把风险和side effect降到最低。但是这样合适吗?理由不言而喻,不多说了。

其三:side effect和风险最小的事情就是啥事情不做。。。。。。。

总的来说,人无远虑必有近忧啊,不要等问题出来一个被动的去解一个,要主动的去揭露问题,发现做的不好就改,高质量的bugfix应该是针对整体项目的,而不是你的这个bug,项目是大家的项目不是你这个bug的项目。

你可能感兴趣的:(bug)