什么是一个很好的过程来解决这个问题?
“不修复它,如果它没有损坏”。
好的过程是让问题独立,直到您必须处理它或除非您被命令重构代码。这听起来不像你的情况是这样。
这种推理背后的理由非常简单:突然出现的完美主义(“让我们变得更好,更干净,更光滑”)可能会让您在未来6个月的生活中付出代价,无任何奖励(满意度不值得,因为这样的事情很快就不会令人满意了)。在这个过程中,你会引入多个新bug,并且可能至少破坏整个系统一次,所以会有一段时间你有大的代码库不起作用。整件事会增加工作量,并可能给你带来严重的压力,从而导致健康问题。除非你被赋予了重构代码的任务,并且保证了可观的回报,否则不要强调要“为了更好的”而改进代码库 - 这种想法可能会导致适得其反。
把整个事情放在允许快速分支/合并(git)的版本控制之下。因为你没有提到版本控制,所以按照墨菲定律,我不得不假设你没有使用它。
专注于需要解决的即时错误。在与您一起工作的领域中,改进代码以使其符合您最喜欢的风格,但保持最小化,并且不要触及与即时问题无关的任何事情。如果你有这种感觉,当你有空闲时间很多时,开始在必要的地方实施测试(与流行的观点相反,单元测试不是银色的子弹)。一旦你有一些方法来测试该应用程序仍然有效,创建单独的开发分支,并开始修改代码非常缓慢,只有当你有时间。尽可能避免将更改合并回主分支(包含未修改的旧版代码),直到您确定所有内容均正常工作。
请记住,您的目标不是完善的代码。 您的目标是使用最少量的资源(时间/精力)为当前问题提供快速高效的解决方案,同时获得工作的最大回报。根据我的经验,偏离这个原则是非常不健康的。
维持和改善现有的旧的代码基本上大致相当于重建3英尺高卡房的底层。即这是具有挑战性的,乏味的,冒险的,但并不能提供必要的情感满意度。所以除非有某种重要的奖励,否则尽可能避免这样做是有道理的。代码不会腐烂,所以如果现有的工作正常,没有理由修改它,只是因为你不喜欢当前源代码的外观。
但是,阅读代码并尝试理解以前作者的想法并更好地理解程序结构将是一个好主意。这从长远来看可能会得到回报。
很简单,你将上帝的部分代码移动到天地,你从中得到一个耶稣。 – orlp 2012-03-10 14:25:23
@nightcracker难道不是每个班级都应该依赖的另一个上帝班吗? – 2012-03-10 14:30:10
神级的定义? – Kevin 2012-03-10 14:43:22