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

And*_*imm 2 maintenance yagni

YAGNI有可能以过去时态申请吗?你创建了一些功能,它曾经使用过一段时间,但你不再使用它了,你不想维护它,所以你宁愿删除它.

是不是没有使用未使用或很少使用的功能?

背景:

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

Mic*_*urr 7

未使用的代码受"代码腐烂"的影响 - 将其作为重构步骤删除是完全合法的.

关于C2的YAGNI和删除页面的一些额外讨论.

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


Sky*_*ers 5

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

困扰我的最重要的事情是重构时产生的摩擦和增加的劳动力.

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