删除对功能的支持的“最佳做法”是什么?

时间:2010-12-02 18:00:39

标签: java

我有一个处理多种消息格式的库。这些格式中的每一种都是密切相关的,它们是一个共同的基础XML,然后每个格式都有一些额外的约束或额外的数据。

其中一种格式是为了支持概念验证或试点工作而创建的。飞行员结束了,它不再被使用,并且它施加了一些尴尬的限制。我已获得删除对它的支持的许可。这样做的正确方法是什么?

我在想:

  1. 打开问题以跟踪/记录更改
  2. 标记SVN修订版,“此处删除FEATURE_X”
  3. @Deprecate特定的类。引用这个问题。提交。
  4. 观察警告并查看弃用影响的内容
  5. 让它坐下来,让团队有机会处理弃用
  6. 最后删除代码。验证测试是否正常。提交。

2 个答案:

答案 0 :(得分:5)

我认为你的名单很好。为了回应@hvgotcodes,这预示着团队之外的任何人都不会使用API​​。在任何一种情况下,在不推荐使用的方法中,我会记录任何对它的调用的堆栈跟踪。这将捕获内部和外部用途。

答案 1 :(得分:3)

对于上述步骤,我建议明确告知其他人该功能将在规定的截止日期前删除。如果功能和/或团队规模很大,我建议让其他人承诺在该日期之前删除他们的代码依赖关系(更大的团队,承诺越重要,考虑管理者支持此任务)。正如我的经验所示,删除某些东西对于一些用户来说是一个很大的惊喜,而且某些地方总有某些代码依赖于FEATURE_X。最后但并非最不重要的是,进行干运行的额外步骤,可以轻松快速地完成。