第二系统综合症

一段时间以后(特别是接手别人开发的系统后),我们就会发现以前开发的系统怎么怎么的不好,总想着重写一套。这就是“第二系统综合症”。我们希望重写的系统变成更好,解决现在系统存在的所有问题。但现实是残酷的,绝大多数时候,我们想要的结果永远也达不到,我们花了无数的时间精力开发出的第二系统,还是和以前系统一样存在各种问题。

与之相关的还有一个“持续重写综合症”,主要表现为对程序进行一些无用的修改,可能会一次又一次的从头开始重新设计。

从某些方面来看,适可而止是最佳策略——能工作足矣

然后“代码疲劳”现象就出现了。程序员会厌烦代码,使用了很长一段时间以后,就会觉得代码丑陋得不堪入目。很遗憾,由于需要迁就很多特殊情况,代码会变得笨重,其中还有大量不同格式的错误处理代码。但这些都是新版本中必须要重新引入的,而且要耗费你的大量精力来首先实现。

换句话说,如果程序能完成为可以工作的系统,那就要坚持下去而不是推倒重来。

Spolsky就说过:从头写代码是任何软件公司都会犯下的最糟糕的决策性错误。

重构总是最好的方法

 

发表评论

电子邮件地址不会被公开。