|代码能跑就不要改,为什么不能改,改了以后会怎样

|代码能跑就不要改,为什么不能改,改了以后会怎样

文章图片

|代码能跑就不要改,为什么不能改,改了以后会怎样

文章图片

|代码能跑就不要改,为什么不能改,改了以后会怎样

文章图片


事情发生在今年的一月份 , 老王入职了一家新公司 , 这家公司做的业务是面向c端做活动的 , 老王入职的时候 , 正好接收了一个离职老员工的一个项目 。

这个项目是代替其它公司给自己公司发奖励金类的项目 , 由于是给钱打交道 , 所以老王也比较谨慎 。 本来这个项目在生产环境运行得好好的 , 但是突然发现 , 这个老项目不再走原来项目的账目了 , 但是能够正常转账 。

老王就修改了项目端对接转账平台的代码 , 然后改的时候 , 看到支付接口每次回调时都会有一次默认失败 , 老王觉得不对 , 也进行了修改 , 而且进行了测试 , 大概测试了不到两天 , 由于运营团队比较着急 , 就放在线上了 。 并且叮嘱了运营同事如果遇到转账异常一定要通知我 。 可是到了第二天 , 老王习惯的打开了对账 。

竟然出了大事 , 一大堆的异常数据 , 老王就立马手动关闭了转账接口 , 并对照数据进行了统计 , 竟然损失了8万多块 , 然后排查代码才发现 , 老代码调用转账接口竟然是两次 , 第二次是确认是否转账 , 而老王改的那块代码并没有注意到 , 每一次调用后都正常支付 。

还能怎么办 , 老王赔偿了公司规定的百分之40的损失 , 并且在周例会上提名得到了批评 , 老王真的是有苦说不出 , 自己明明改了一块bug , 竟然给自己和公司带来了那么大的损失 。

为什么代码跑起来 , 就不要修改了?
一个不能动的老代码 , 代表的是正常工况下正确运行的无风险收益 , 但是你一旦动了 , 将可能带来一定的风险 , 而这个风险是你不能把控的 。 最终会归咎于开发者的失职 。
【|代码能跑就不要改,为什么不能改,改了以后会怎样】
所以 , 我们代码一旦跑起来了 , 就不要去修改了 , 能跑的代码再混乱 , 但也是测试通过的 ,