关于问题为什么感觉国内程序员都很少进行代码重构?一共有 5 位热心网友为你解答:
【1】来自网友【底层技术栈】的最佳回答:
用第三方的框架代码,出了 BUG 之后你老板叼你时,你可以把问题推给第三方。
要是你把第三方的哪个模块重构了,出了 BUG 之后你老板不叼死你才怪呢[捂脸]
重构这事只能老板自己干,因为这锅只有他背得动。
其他人任何时候都要保持能把锅推给第三方的可能性,因为背不动锅。
所以,问题只能是客户的、供应商的、白票过的开源作者的[我想静静]
【2】来自网友【燕小祺看世界】的最佳回答:
上家公司有一个活生生的例子,有一个历史遗留项目,代码经过无数人的手,某天出现了一个奇怪的 bug,那个朋友在翻了半天的代码后,提出了项目重构的意见,我们都劝他不要搞了,这种项目重构下来不死也得脱成皮,他说我宁愿脱皮也不愿意再吃屎了,然后他就按自己的想法去重构项目了,那段时间,基本上把公司当成家了,晚上不回家,累了就躺沙发上睡一觉,熬了半个月,项目只完成了 20%,突然有一天,发现他不在公司了,几天没来上班,一打听,这老哥把自己熬的肾衰竭了……
所以,珍爱生命,非万不得已,不要想着重构
【3】来自网友【kutuzov】的最佳回答:
脑壳有包才去重构,业务都做不过来,以前有个老兄想重构代码,领导直接给说,重构可以不算 kpi,日麻的 重构不出问题,领导觉得原来就好好的 你重构不出问题那是应该的。出问题就是你的责任。最好是从业务上进行重构 顺便重构代码,业务上没诉求,系统提供服务平稳的,你觉得有重构必要?
【4】来自网友【码农 45】的最佳回答:
因为国内程序员没有这个实力,大多程序员在 35 岁被裁被迫转行,有技术的都不在这个行业了还怎么重构?留下一堆菜鸟 CRUD 都整不明白,难道让他们知道怎么重构?
【5】来自网友【蓝色 Zero】的最佳回答:
Time is money. 以目前国内互联网的情况,需求应接不暇,程序员基本上都是被需求与业务赶着走,时间非常紧张,在这种情况下,程序员很多时候唯一的选择就是赶紧实现需求的功能。所以,一个项目下来,代码基本上都变得非常非常的“垃圾”。
也有很多程序员想过在项目结尾的时候进行代码的重构,基本上每个程序员也都知道重构代码的好处,但是并不代表着真正能做起来。还是那个原因,国内互联网的速度太快,需求应接不暇,做为程序员,基本上没有时间来做这件事情。
而另外一个原因是跟团队负责人有关。若团队负责人能够意识到重构的好处,那么他可以为此单独划分一段开发时间出来,让大家分别负责一个模块进行重构,这都是可以安排做起来的。这也需要团队负责人如何在需求人员的需求与代码质量的进度上做一个平衡,进行统筹安排。
最后我想说一个可能很少意识到的原因,那就是人员流动问题。国内互联网目前人员流动非常的大,尤其是北上深这样的互联网发达的城市,基本上是平均两年就会走一大波人,在这样的情况下,也会考验从业人员的职业道德,即我到底要把代码写的多好,要把代码的可维护性做到多好,其实这都是从业人员自身需要考验的问题,因为完成一个功能很容易,但是要考虑的全面就是另外一回事了。而人员流动带来的另一个问题就是有一些代码是很难看懂的,即有些代码在人员离开后成为了“历史”,无人敢动。这也会阻碍着软件的重构工作的进行。
从我所讲的这几种情况来看,重构其实是大家都能知道的好处,但是真正实施起来却又有现实的约束,需要负责人来做这样的统筹安排与推动。