如何重构没有IDE功能的代码(在Vim或TextMate中)?

如何重构没有IDE功能的代码(在Vim或TextMate中)?,vim,refactoring,textmate,text-editor,Vim,Refactoring,Textmate,Text Editor,我想知道程序员如何重构用Ruby、Python等语言编写的代码 假设您是在“上一个”家伙之后得到代码的,所以您无法确定测试的质量和覆盖率 您是否使用任何特定方法?在vim中,您可以使用以下命令 并通过按n循环浏览文件来获取spock的所有实例 要搜索和替换,可以使用以下命令: :%s/spock/kirk/g 这将用kirk替换spock的所有实例。但您也可以使用来完成整个目录或项目 祝你好运 如果没有IDE,您将不得不采取更小的步骤,并受到全面的单元测试的良好保护。Martin Fowler

我想知道程序员如何重构用Ruby、Python等语言编写的代码

假设您是在“上一个”家伙之后得到代码的,所以您无法确定测试的质量和覆盖率


您是否使用任何特定方法?

vim
中,您可以使用以下命令

并通过按
n
循环浏览文件来获取spock的所有实例

要搜索和替换,可以使用以下命令:

:%s/spock/kirk/g
这将用kirk替换spock的所有实例。但您也可以使用来完成整个目录或项目


祝你好运

如果没有IDE,您将不得不采取更小的步骤,并受到全面的单元测试的良好保护。Martin Fowler在所有软件工具都可用之前编写的,是如何安全重构的一个很好的指南。您可以采取一些小步骤,始终检查您没有破坏任何东西,经常保留原始代码,直到替换完成。这很枯燥,但可行。

要用Python重构代码,可以使用。

与IDE提供高级重构工具之前多年人们所用的方法基本相同。在VisualStudio之前,人们实际上是用来编写C++代码(甚至是C)的。你可以使用默认命令行,我认为OP更希望得到更自动化的工具来提取方法、语法感知的查找和替换等等。这个答案是完全正确的,但不足以回答问题本身。
:%s/spock/kirk/g