删除未使用的功能是件坏事吗?

时间:2010-05-05 00:32:09

标签: maintenance yagni

YAGNI有可能以过去时态申请吗?你创建了一些功能,它在很久以前就被使用了,但你不再使用它了,你不想维护它,所以你宁愿删除它。

是不是必须摆脱未使用或很少使用的功能?

背景

  • 我使用源代码控制,所以如果我再次需要这个功能,我可以得到它。
  • 我是我软件的唯一用户(我是分析数据集的生物信息学家)。
  • 我遇到这种情况的一个场景是我使用继承,父类和两个子类。一个是处理由454测序(下一代测序)生成的文件,另一个是处理由Sanger测序(上一代测序)生成的文件。我积极维护后者,但不是前者。也许我的错误是使用继承而不是构图,但这是一个略有不同的故事。

5 个答案:

答案 0 :(得分:7)

未使用的代码受'code rot'约束 - 将其作为重构步骤删除是完全合法的。

关于C2的YAGNI and Deleting页面的一些额外讨论。

也就是说,我发现自己通常会剔除死代码而保守,但这可能是我需要处理的......

答案 1 :(得分:5)

死代码在很多方面都很昂贵。

最困扰我的是重构时产生的摩擦和增加的劳动力。

按删除键。如果您以后需要,请转到SCC并获取它。

答案 2 :(得分:2)

新手程序员为他们编写的新功能感到自豪。主程序员在能够删除某个功能时很满意。

答案 3 :(得分:1)

您不应该编写未使用的代码的所有原因也适用于您不应该保留未使用的代码的原因。如果你不需要它,不要把它留在身边。 : - )

答案 4 :(得分:1)

删除它。一个新的缩写,YGRKI怎么样 - 你会后悔保持它吗?