Xcode提供了以下几个重构功能:
- Rename
- Extract to Function (使用选中代码生成一个C函数)
- Extract to Method(使用选中代码生成一个OC的方法)
- Create Superclass (新版xcode上已失效)
- Move Up(新版xcode上已失效)
- Move Down(新版xcode上已失效)
- Encapsulate(新版xcode上已失效)
在菜单栏中的位置如下图:
在代码区里直接右键也能出现重构的相关菜单:
下面就分别介绍常用的重构功能的使用。
Rename:重命名
几乎可以试用所有symbol:类名,方法名,函数名,属性名等。使用起来非常简单,选中一个要重命名的符号后,选择rename,就会弹出一个输入框让你输入要想要的新名称。
修改一个属性名称后的预览, 确认这些是你要修改的, 然后点击右上角的Rename或者回车即可.
Extract:将代码抽取为一个单独的方法或函数
选中一段代码后(可以包括注释),选择Extract,会分析你选择的代码段后自动生成方法签名。
你可以修改方法名,如果参数、返回值不正确也可以自己再修改。
如果选择了function,就是C语言的函数:
上面这3个算是最常用的情况了, 其他的场景还需要探索, 选中的类/方法/属性 只有在可用时refactor才会变成可选状态, 其他场景下是不可点击的,
总体来说, 感觉Xcode提供的工具还是比较简单的, 更多的还是要依靠我们自己来做.
还有一件悲伤的事
以上这些重构功能并没有快捷键。
虽然好像有我也记不住啊!
别这样,白要谁不要。
那么如果我就是装逼快捷键党,不想让别人知道我选用了这个功能怎么办呢?
也许全世界你也可以忘记,至少还有key binding值得你去珍惜:
一件更悲伤的事
喜新厌旧的我在使用swift时,选择了一个extract后,出现了下面的提示框。
我心中: