任何有用的指标都可以
我在代码中寻找的一件事是单元测试.这将给予重构它的自由.因此,如果代码没有测试,我认为它是遗留代码.
如果代码:
已经被实现相同或功能或更好的新代码所取代
目前的系统没有使用它
很快就会被其他东西取代
由于历史原因已归档
当供应商停止支持它
我们使用术语"遗产"来指代仍在使用中的任何代码,这些代码使用我们已停止积极开发的技术开发.
我们宁愿使用更新的工具重写代码而不是在当前状态下进行修改.
Micheal Feathers是优秀的"有效使用遗留代码"的作者,将其定义为任何没有测试的代码.
一个更好的问题可能是将一段代码标记为非遗留代码.
对我而言遗产意味着不可改变.因此,一旦你不再"能够"改变它,那就是它的遗产.
是否通过固定要求消除了这种能力,对破坏,知识损失或其他影响的恐惧在很大程度上是无关紧要的.
一个相关的说明是,我认为我没有使用遗留的确切词,因为它激起了太多的情感才有用.