美文网首页iOS Developer程序员ios
Xcode8 五分钟重构起步

Xcode8 五分钟重构起步

作者: 溪石iOS | 来源:发表于2016-10-10 13:03 被阅读835次

    准备好工具:

    • Xcode 8
    • Git
      注:下文中提及的重构相关专业术语,均与《重构》一书一致

    建立Git版本管理

    重构会改写代码,甚至代码结构,但并不保证重构后的代码能正常编译,因此在把一切弄的不可收拾之前,需要给自己一个救生圈,Git就是这样的工具,可以将目标代码复原。

    1. 转到目标工程的目录下,运行:
    $git status
    

    查看目标工程是否已经在git管理之下,如果返回:



    说明当前工程没有配置Git。

    1. 逐条执行以下命令,建立版本库,并将文件都添加到版本库中
    $git init
    $git add .
    
    1. 最后提交当前版本:
    $git commit -m "init" -a
    
    1. 这样,目标工程就置于Git版本管理之下了,需要恢复时运行:
    $git checkout .
    

    也可以使用Xcode 内置菜单(推荐):

    Xcode 内置一键还原菜单

    工具1: Xcode 8 重构(Refactor)菜单

    • Rename 重命名:顾名思义,用来重命名类、属性、方法以及局部变量名等等,它能够改写整个工程所有调用的地方,当改写类名时,会同步改好.h.m文件的文件名,好像是一个智能的,基于调用上下文(有语义)的 find and replace 查找替换工具。【注:Xcode8该功能只能替换.h.m文件中的对象名,无法替换其它调用位置,Xcode7可以全部替换】
    • Extract 提炼:可以将选择的代码片段转换成一个新的方法或函数,能自动生成参数和返回值,并调用新方法替换原来的代码片段。
    • Move Up 上移 将方法、属性或实例变量移到父类(super class)中。
    • Move Down 下移:你可能以为下移上移的反向操作,可以将方法、属性或实例变量移到子类中,但非常不幸,下移只能移动实例变量,因此并不是很实用!
    • Encapsulate 封装:当需要自定义setget方法时,封装可以自动帮你生成。

    工具2:在作用域中编辑

    Edit All in Scope ^⌘E^表示control键,下同)

    在作用域中编辑

    工具3:跳转到定义处

    Jump to Definition ^⌘J 等同 ⌘+鼠标点击变量名,可以快速跳转到变量,方法,类的定义处,需要返回上一编辑处时Go back ^⌘<-

    工具4:快速打开文件

    Open Quickly ⇧⌘O表示Shift键)
    这不同于一般的查找,支持在项目中全局搜索,同时支持文件名和代码,并可使用缩略词,建议代替查找工具,作为日常定位文件和定义的常用工具。

    支持缩略词查找

    相关文章

      网友评论

        本文标题:Xcode8 五分钟重构起步

        本文链接:https://www.haomeiwen.com/subject/cwwuyttx.html