3

有没有办法在Visual Studio中执行“提取方法”重构的相反方法?相反的提取方法重构

我有一个遗留的代码库,有大约50个非常短的私有函数,每个函数只使用一次,而且我的任务是内联它们。

如果自动内联重构不可行,是否可以减少内联这些函数调用所花费的时间?我目前的工作流程是:

  • 复制函数中的代码。
  • 找到它被调用的地方。
  • 将函数调用替换为复制的代码。
  • 从函数中替换局部变量名称。
  • 删除该功能。

回答

5

您正在寻找的重构被称为"Inline Method"

在Visual Studio中没有提供这个重构开箱即用,您可以通过安装扩展Jetbrains ReSharper为Visual Studio访问它(和许多其他有用的重构)。

安装了扩展程序后,您只需单击方法声明或方法调用,然后调用'Inline Method'重构。这将自动内联所有出现的方法并将其删除。

-1

您可能会考虑将函数收集到头文件中并用inline对它们进行装饰。我意识到这不完全是你问的答案,但可能是你的问题的更好的解决方案,因为这样编译器会执行内联(如果它认为合适的话)。

它取决于情况,但保留函数定义可能会导致代码更加清晰,因此即使只调用一次也可能具有价值。

与手动“内联方法”重构相比,这也更快更容易出错。

相关问题