圣诞大减价开始了!

删除参数

问题

在方法的主体中不使用参数。

解决方案

删除未使用的参数。

之前
移除参数-前
移除参数- After

为什么重构

方法调用中的每个参数都迫使程序员读取它,以找出在这个参数中找到的信息。如果一个参数在方法体中完全没有使用,那么这种“瞎琢磨”是毫无意义的。

在任何情况下,额外的参数都是必须运行的额外代码。

有时,我们添加参数时着眼于未来,预测可能需要参数的方法的变化。尽管如此,经验表明,只有在真正需要时才添加参数会更好。毕竟,预期的变化通常只是预期的。

好处

  • 方法只包含它真正需要的参数。

什么时候不用

  • 如果方法在子类或超类中以不同的方式实现,并且在这些实现中使用了参数,则保持参数不变。

如何重构

  1. 查看该方法是否定义在超类或子类中。如果是,是否使用了该参数?如果在其中一个实现中使用了该参数,请暂停使用这种重构技术。

  2. 下一步对于在重构过程中保持程序的功能性很重要。通过复制旧方法并从中删除相关参数来创建新方法。用对新方法的调用替换旧方法的代码。

  3. 找到对旧方法的所有引用,并将它们替换为对新方法的引用。

  4. 删除旧的方法。如果旧方法是公共接口的一部分,则不要执行此步骤。在这种情况下,将旧方法标记为已弃用。

Baidu
map