处理代码中大量未使用或已弃用功能实现的好方法

3

目前我们的应用程序面临以下问题:

应用程序中约40%的代码从未被使用过。这意味着代码存在,可能是有效的,但是“前端功能已关闭”,因此用户无法再访问该功能或者“其他方法正在替换旧的、现在已被弃用的方法”。

我目前正在手动删除所有旧代码,同时不试图破坏任何东西。

问题是:

  • 您会删除旧代码,还是希望它可能会有用...像僵尸一样苏醒?
  • 您认为是否值得删除代码(在杂乱中查找内容更少,测试覆盖率更好,其他人也更容易找到他们的路)?
  • 我们应该将代码保留在某个地方作为参考吗?(我们使用版本控制,但我发现在修订混沌中很难找到旧代码...有什么建议吗?)
  • 您有说服编写该代码的团队/管理/开发人员的论据吗?
  • 不废弃然后删除代码的原因是什么?

TL;DR:删除未使用的代码还是保留它?讨论!

u

2个回答

4
如果你确定代码是未使用的,那么一定要删除它。我假设你有一个版本控制系统,所以如果你将来需要它,仍然可以找回代码。
删除未使用的代码将使项目更容易维护,并且你的团队在长期内可能会节省时间(没有人会重新阅读代码来尝试理解它被用于什么,也没有人会修改该代码认为它仍然被使用...)
然而,如果你的代码包含一个公共API,该API会分布,在有效删除代码之前,你可能希望将类/方法标记为已弃用,以便调用方有一些时间去适应(或通知你此问题)。

谢谢!这里绝对有一些好的论点。顺便说一下:我们没有公共API,但有很多紧密连接的遗留代码:(所以删除东西需要相当大的努力... - Paul Weber

2
  • 你会删除旧代码,还是希望它有一天会被唤醒,像僵尸一样?

我肯定会删除它。我讨厌需要弄清楚函数是否被调用。

  • 你认为值得花力气去删除代码吗(在混乱中找到东西的工作量小,测试覆盖率更好,其他人更容易找到他们的路)

是的,绝对值得努力。

  • 我们应该将代码保留在某个地方作为参考吗?

嗯,你使用版本控制软件吗?


谢谢您的回答。我们正在使用SVN,但很难找到代码被删除之前使用的最新版本,所以我更多地考虑在某个弃用的文件夹中放置代码,这样人们就知道曾经有过代码(但也许隐藏代码曾经存在的事实甚至更好...)。没有版本控制的编程是自杀行为...我已经经历过了... - Paul Weber
1
@Paul 在删除之前,请在 SVN 中标记它。 - unquiet mind

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接