2008-11-18 57 views
1

为什么公司应该对重构组件进行投资,尽管它不会为产品添加任何新功能?需要重构吗?

我同意这是清理代码,修复错误和删除死代码 - 但是什么是采取?

回答

10

维护。这将显着降低您的维护成本。没有充分考虑的代码与大多数公司存储库中的垃圾之间的比较。后者几乎毫无价值,而前者是黄金。

+0

但客户的附加值是多少? – atVelu 2008-11-19 04:15:28

2

这取决于你问谁。非技术经理可能会说没有必要。支持开发人员会说,这将有助于降低维护成本。

1

重构需要成为您日常工作的一部分。您不断重构您的代码,使其更易读/可维护/强大/可重复使用等。

您的代码是一个活的文档。如果它不随时间变化,它就会停滞不前。

投入测试。投资于重构。投资编写好的代码。

0

要开始:重构是一种税收。如果代码有效,那么你花时间修复已经有效的代码,我可以看到现在看起来很古怪的业务类型。我喜欢的一种说法是“Legacy是另一个可用于代码的词。”

现在,在开始花费更多时间维护开发功能的代码之前,需要解决的代码库日益增多,存在许多问题。

就我个人而言,我喜欢“没有破窗”哲学。

0

如果没有损坏,请不要修复它。

但是,如果您需要开始将组件安装到新的不可预知的需求中,那么确定可以提取和重用的位通常是有意义的。您需要确定您的更改引入了意想不到的错误 - 因此您需要良好的测试覆盖率。

1

维护。有时候,一个项目会变得很大,或者有太多的“快速”补丁需要进一步扩展。你只需要冷静地坐下来清理并重构。

1

虽然其他答案都是真的,但重构的力量在于它允许您通过可预测的结果更改代码的设计。维护的最大问题是,预测复杂应用的所有要求几乎是不可能的。

其中大部分可通过添加新功能(如新报告或命令)来处理。但其他将需要重新设计您的应用程序的一部分。这就是重构和兄弟单元测试的关键。通过使用重构技术,您可以安全地进行必要的设计更改。

这不是一种万能技术,而是另一种提高代码质量的工具。 (结构化编程,面向对象等)。