【发布时间】:2011-02-22 19:13:09
【问题描述】:
几个月前我开始了一个相当大的 2D 游戏引擎项目,我开始注意到:
前一两个月的代码与最近的有很大不同:
- 变量的命名感觉有点不同
- 某些代码风格方面有所不同
- 我有时想知道为什么我会这样命名某个函数,并且很容易想到一个更好的名称
- 代码感觉相当混乱
在某些部分,我几乎立即想到了一种更好的方法
代码似乎质量明显下降
然而,在我写这篇文章的时候,我一直在注意以和现在一样的方式做每一件事。
现在,我的问题:
即使在大型商业项目中,这种情况也很常见吗?
我是否应该考虑投入(大量)时间重构甚至重写受影响的代码?
随着项目的发展和变化,大部分代码必须从头开始重构或重写是否正常?这很糟糕吗?
【问题讨论】:
-
这种情况常见吗?是 重构?仅当您需要更改代码或代码完全不可读时。如果有人不断地回去重构,那么新功能就不会取得进展。这是一个必要的杂耍游戏,所以用你最好的判断。正常吗?是 不好吗?没有
-
每年回顾我的项目越来越尴尬。这是一个学习的东西,但它的回报确实是递减的(在很长一段时间内)。是的,你应该回去并尽力做到最好,但这是一个非常有争议的观点。
-
@GMan:我认为这取决于我们在谈论什么样的“最佳”。良好的名称、一致的风格和不混乱的主要好处是使维护更容易和更快。在这些事情上花费时间,在旧代码中工作,可能会破坏这个目的。它是额外的维护工作,在您的命名和样式约定发展的另一年,您将再次完成这一切,甚至可能在此期间甚至不看一眼代码。当然,如果代码不起作用,或者如果它可以更快/覆盖更多案例/一半大小,我会在里面改进样式。
标签: c++ refactoring project-management