IOS高级工程师成长之路 -- 技巧篇《提高iOS开发效率的方法和工具》(持续更新)

1.善用快捷键

快捷键是开发中必不可少的,当你善于使用快捷键的时候,十指在键盘上飞舞,那画面太美,我不敢想象

  • Shift + Command + O 弹出快速查找文件窗口(这个是字母O,Markdown O之后很像数字0 ),Shift +Commond + 0 是快速打开官方文档的快捷键。

  • Shift + Comand + j 定位到文件所在目录,经常配合上面那条快捷键。

  • Control + Command + 上\下 切换 .m 和.h。

  • Command + t 新建一个Tab,这个很实用,我平时一般都会建3,4个Tab,关闭Tab 可以用 Command + w。

  • 如果你不习惯开多个Tab,习惯开多个Xcode窗口,可以用Command + ` 来互相切换。

  • Control + Command + e 可以批量修改光标所在位置的变量,像这样

  • Shift + Command + f 打开全局搜索,当然你可以连续按住Command键连续按两次 4,也会聚焦到全局搜索,全局搜索这里要说一下,搜索Xcode 不仅仅是支持text匹配,最常用的可以加个 Any 正则,就可以搜出如图中的这种,等等。

  • Command + f 在类中搜索 ,enter 匹配下一个 Shift + enter 匹配上一个。

  • Command + 上\下\左\右 光标切换到类首,类尾,行首,行尾。

alt + 左\右 光标左右移动一个单词。

  • Command + delete 删除光标到行首的内容,同理alt + delete 删除光标前的一个单词,另外可以先切换到到行尾 用Command + delete删除一整行内容。

  • 同理 Command + Shift 和 Command + alt加方向键就可以选中一整行或者多行了。

  • 选中一段代码 Control + i 会自动缩进。

  • Command + \ 当前行加断点,alt + Command + \,新建一个symbolic breakpoint。

  • Command + n新建文件 ,Shift + Command + n 新建工程

  • alt + Command + 左\右 折叠\显示当前块,Shift + alt + Command + 左\右 折叠\显示当前文件中的块。

  • Control + Command + [ 上移,如果没有选中,默认上移当前行,Control + Command + ] 下移。

  • Command + ] 向右缩进,支持多行,Command + [ 向左缩进。

  • Shift + Command + k product 清理,Command + r Run,Command + b 编译。

  • 还有一个重要的快捷键,☝️,Control + Command + p 快捷导入,像这样,

Xcode 窗体相关

Shift + Command + Y 隐藏 \ 显示 console 区,但是我建议显示console区 用 Shift + Command + C,会直接聚焦效果。

Command + k console清屏。

Control + 1 这个应该很多工程师都没用过,当然点击小图标也可以。

  1. Control + 6 查看当前类的方法列表,这里建议用 pragma mark 来合理分块,相关扩展阅读可以看这里的代码规范建议

  2. Command + 1,2,3,4,5,6,7,8,9 切换左边窗体,Command + 0 显示 \ 隐藏左边窗体。

  3. alt + Command + 0 显示 \ 隐藏右边窗体,同理alt + Command + 1,2等也可以切换

  4. Command + , 弹出 Perferences ,可以用 Command + w 隐藏

其他
还有一个多行编辑,有的时候也会用到,需要借助Sublime Text, 快捷键是 Shift + Command + L,退出多行编辑也是Shift + Command + L
Shift + Command +3 全屏截图,Shift + Command + 4 自选区域截图,Shift + Command + 4 + 空格 截图某一个窗体。

Command + F3 快捷查看桌面。

Control + Command + 空格 弹出表情输入框。

2.常用代码片段

开发中有一些常用的代码,可以放到代码片段中,然后下次你就可以使用快捷方法来使用这些代码了,给大家看下我的Xcode中部分代码片段:

APP

Injection

这款好像之前我分享过,就是一个可以让你改动代码不需要重新运行就能见到神奇效果的app。有一点不好,那就是oc的get方法无法注入。

SimSim

可以快速访问模拟器里的沙盒

Charles

抓包工具,这个不用多说,coder都应该知道的。

Doxygen

文档生成器,当然也有很多,比如appledoc,但是Doxygen是图形化,用过几次,实际上对我们并没啥太大作用(可能大公司更需要吧)。

Postman

接口测试工具,一个Google chrome的插件

hopper

反编译,玩逆向的都知道,不过笔者也只是连这款软件的门都没入。

JSONExport

这款真的很给力,根据JSON格式自动生成class model,支持oc,swift,Java,等多种语言

SQLPro Studio

访问数据库的图形化,笔者感觉这款软件在mac上比较好用,至少我个人觉得。

reveal

这款ui调试神器就不需要过多解释了吧。

NSLogger

这款也不错,在项目里导入框架,然后项目里用NSLogger框架的api输出日志可以在电脑上打开NSLoggerapp来进行查看。可以当做留一个后门查看日志并盗取数据来做点坏事(以前不开森的时候,我做过,然后把别人的数据给收藏了那么一丢丢),笔者也很久没用了,具体使用参考地址:https://github.com/fpillet/NSLogger

三方库
UIViewController+Swizzled
这个我想大家都知道吧,就是可以在控制台打印出controller的层级,虽然用lldb也可以做到(我之前文章貌似写过)。

MLeaksFinder
检测内存泄露的,虽然有局限性,但基本满足需求啦。

NSDictionary-NilSafe
这东西顾名思义,但目测感觉没啥太大用处。

NSLogger
搭配上面NSLogger的app使用

结尾
比较有用的目前感觉就这几个三方库的,后期会不定维护和更新,下面贴出我最近项目的pod三方库(部分三方库是手动导入的,就不贴出来了),看有木有读者需要的资源。

pod 'ReactiveCocoa','~>2.5'
    pod 'SDWebImage','~>3.8.0'
#    pod 'FDStackView'
    pod 'IQKeyboardManager'
    pod 'AFNetworking'
    pod 'MJRefresh'
    pod 'UIViewController+Swizzled'
    pod 'DZNEmptyDataSet'
    pod 'MJExtension'
    pod 'JDStatusBarNotification'
#    pod 'MBProgressHUD'
    pod 'Masonry'
    pod 'SDCycleScrollView'
    pod 'NJKWebViewProgress'
    pod 'MLeaksFinder'
    pod 'QRCodeReaderViewController'
#    pod 'TZImagePickerController'
    pod 'DACircularProgress'
    
    pod 'INTULocationManager'
    pod 'APAddressBook'
    pod 'JGActionSheet'
    pod 'Bugly'
    pod 'TSMessages', :git => 'https://github.com/KrauseFx/TSMessages.git'
#    pod 'TSMessages'

#    pod 'HexColors'
    pod 'NSDictionary-NilSafe'
    pod 'FDFullscreenPopGesture'
#    pod 'JCAlertController'

    #swift
    pod 'SnapKit'

-------------------- 持续更新 ---------------

你可能感兴趣的:(IOS高级工程师成长之路 -- 技巧篇《提高iOS开发效率的方法和工具》(持续更新))