在应用开发过程中,有太多繁杂的事务需要开发者认真去解决。如何才能对开发流程进行改善或自动化,从而提高效率?这成为许多开发者共同探讨的命题。有的开发者会别出心裁地想出熟记他们最喜欢使用的文本编辑器的快捷键,还有的开发者会编写一个简单的脚本文件来自动执行一些简单的任务。除了这些以外,还有什么非常方便快捷的方法呢?让我们一起来看一看吧。

1. 快捷键

事实上,几乎每一个Xcode命令都有一个对应的快捷键,这些快捷键既可以默认,也可以开发者自己设置。磨刀不误砍柴工,多花点时间来熟记每一个快捷键能够让你事半功倍,极大地提高你的工作效率。如果你和我一样,写代码的时候特别喜欢键盘操作,那么这种方式一定会对你大有裨益。

如果你不喜欢默认的快捷键,那么,你可以在Key Bindings下的参数选择窗口中对Xcode的默认快捷键进行自定义设置。

当然,快捷键命令实在是太多,要想一项一项浏览,找出几个重要的实属不易。所以我建议开发者们可以看看Stack Overflow上给出的Xcode的隐藏功能这一问题,在回答中,包括许多Xcode非常重要的快捷键,以及其他一些非常灵活的技巧。

2. Objective-C第三方库管理利器——Cocoapods

在应用开发过程中,第三方库肯定是必不可少的。而由Eloy Durán发起的Cocoapods项目可谓是Objective-C第三方库的管理利器,不仅能提高开发效率,还可以帮助开发者管理Xcode中的第三方库,非常方便。那么,Cocoapods究竟是什么呢?简单来说,它就是一个用于管理Xcode依赖库的工具(iOS、Mac通用)。

由于Cocoapods非常受开发者欢迎,所以很多第三方库都会对Cocoapods提供支持。尽管Cocoapods是一个Ruby Gem,但即使你对Ruby并不是太了解,也可以非常方便地使用它。

3. Code Snippets(代码片段助手)

现在可能许多开发者都在使用像TextExpanderCodeBox这样的文本或代码片段管理器。一直以来,我使用的都是TextExpander,它的确节省了我大量的时间。不过,Xcode也有一个代码片段助手,就在Xcode右侧栏那里,紧挨着Object Library。

在Xcode中,每个代码段都有一连串额外的属性,正是这些属性,让代码更强大、灵活。每段代码都有一个平台、语言和完成范围的属性,代码片段的完成范围对Xcode编辑器有着很大作用。因此,在Xcode中进行iOS应用开发,最好还是使用Xcode自带的代码片段助手。

4. 学习Git

对于还对源代码管理这个概念比较陌生的编程初学者,我强烈建议多花点时间来学习Git的基础知识。Git是一个开源的分布式版本控制和源代码管理系统。简单来说就是,Git能够帮助你快捷高效地管理源代码。如果将Git搭配GitHub或BitBucket一起使用,那么你就有点专业程序员的样子了。

如果你已经掌握了Git的基本知识,那么,建议在你的Xcode项目中,建立一个.gitignore文件。虽然Git更多的是通过命令行使用,但也有许多GUI的客户端应用。我最喜欢的是Fournova开发的Tower,另外,AtlassianSourceTree也是个非常不错而且免费的选择。

5. Xcode Behaviors

Xcode是一个非常强大并且不断完善的编辑器,在Xcode中,我最常用的一个功能就是Behaviors。通过定义行为,你可以告诉Xcode当某项特定的事件发生时它应该做什么。

一切的行为都可以在Xcode的Preferences窗口中进行配置。在输出时,如果你不想Xcode显示控制,你可以在Behaviors面板上禁止该行为。在测试反复失败时,你想要Xcode显示Issues Navigator,都可以通过Xcode Behaviors进行设定。Xcode会预先设置Build、Testing和Running等一些常用行为。当然,你也可以自定义行为或进行快捷键设置。

6. Tabs & Windows

我非常喜欢Xcode 4统一的外观和Interface Builder的一体化。不过,有时候也需要多窗口同步操作,比如同时运行控制台和编辑器,或使用多重显示器。在Xcode 4中,仍然可以实现多窗口同时运行。你可以使用快捷键Shift+Cmd+T或点击菜单File>New>Window创建一个新窗口。

比窗口更有效果的是标签(Tabs)。现在几乎每一个代码编辑器都有标签,Xcode当然也不例外。基本上开发者或多或少都会用到标签,但却很少有人知道Xcode的标签是可以命名的,甚至还可以将已命名的标签与Xcode行为相绑定,这在对程序进行调试的时候会非常有用。

7. 文档

即使是对于具备多年应用开发经验的开发者而言,文档也不是一个简单的事儿。如果你想快速访问Xcode的文档浏览器,不妨采取以下方法:按住Option键,单击Xcode编码器中的一个函数,会跳出关于它的概述,如果想要阅读更多或打开文档浏览器,可以点击弹出窗口中的其中一个链接。

除了这个方法之外,你还可以通过打开Xcode右侧栏,再打开Quick Help Inspector Tab,也能达到相同的目的。

Xcode的文档浏览器很强大,但速度太慢,所以很多时候,我都会使用到Dash,它是一个专门用于文档和代码段的管理器,不仅速度非常快,而且还支持80多种语言、库、框架和API。

图:Dash

自csdn中

IOS效率提升工具的更多相关文章

  1. web开发中的 emmet 效率提升工具

    web开发中的 emmet 效率提升工具 可以用来快速生成html 代码. 并且给各种IDE.编辑器提供了插件支持,sublime ,webstorm等. 如在webstorm中安装好emmet之后, ...

  2. 效率提升工具Listary

    效率提升工具Listary https://baijiahao.baidu.com/s?id=1590032175308204846&wfr=spider&for=pc

  3. https://docs.huihoo.com/infoq/qconbeijing/2016/day1/工程效率提升专题/2-2-支持百度万人开发的工具装备及百度工程能力建设-夏仲璞.pdf

    https://docs.huihoo.com/infoq/qconbeijing/2016/day1/工程效率提升专题/2-2-支持百度万人开发的工具装备及百度工程能力建设-夏仲璞.pdf http ...

  4. iOS自动化测试驱动工具探索

    本文主要介绍了字节 iOS 自动化测试驱动工具的探索过程及实现原理 作者:字节跳动终端技术--陈友辉 一.背景 随着业务的扩张,单个 App 的功能越来越多,工程复杂度越来越高,每天MR可达上百次,代 ...

  5. 基于微服务的DevOps落地指南 交付效率提升40%

    基于微服务的DevOps落地指南 交付效率提升40% 2015-2016年,珍爱线下门店已新增覆盖城市9个,与此同时,CRM系统大小故障却发生了数十起... ... 珍爱网是以“网络征选+人工红娘”模 ...

  6. Atitit 开发进度 开发效率提升解决方案

    Atitit 开发进度  开发效率提升解决方案 1.1. 使用4gl语言 dsl语言尽可能 1 1.2. Ssd+高屏幕显示器,提升硬件 1 1.3. 汉字命名规范,可以大力提升可读性与效率 1 1. ...

  7. 干货:用好这13款VSCode插件,工作效率提升10倍

    文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 大家好我是lemon, 马上进入我们今天的主题吧. 又 ...

  8. iOS如何提升,首先得知自己的处境!(欢迎评论留言)

    聊聊行情?为什么总有人在乎旁人的看法而忽略自己的初衷?虽然iOS开发市场说不上好但也绝不算坏,想没想过那些煽风点火说iOS不行的人在做什么?真的转行从头开始?错.大错特错!在劝退你的同时他们会默默的学 ...

  9. jQuery效率提升建议

    jQuery简洁通用的方法集把编码者从繁重的工作中解脱出来,也拉低了进入javascript的门槛,初学者对浏览器兼容性一无所知的情况下,几行代码就可以写出超炫的特效.网上有一篇文章转载比较泛滥,已经 ...

随机推荐

  1. Vue 2.0学习(四)计算属性

    {{}}模板内的表达式常用于简单的运算,当运算过长或逻辑复杂时,会难以维护. <div> {{ text.split(',').reverse().join('') }} </div ...

  2. 【BZOJ 3218】 3218: a + b Problem(最小割+可持久化线段树)

    3218: a + b Problem Time Limit: 20 Sec  Memory Limit: 40 MBSubmit: 1440  Solved: 545 Description Inp ...

  3. BZOJ1007 水平相交直线

    按照斜率排序,我们可以想象如果你能看到大于等于三条直线那么他一定会组成一个下凸包,这样我们只需要判断如果当前这条直线与栈顶第二直线相交点相比于栈顶第二直线与栈顶直线相交点靠左那么他就不满足凸包性质. ...

  4. [BZOJ4240]有趣的家庭菜园(贪心+树状数组)

    最后数列一定是单峰的,问题就是最小化最后的位置序列的逆序对数. 从大到小加数,每次贪心看放左边和右边哪个产生的逆序对数更少,树状数组即可. 由于大数放哪对小数不产生影响,所以正确性显然. 注意相同数之 ...

  5. POJ3744 Scout YYF I 概率DP+矩阵快速幂

    http://poj.org/problem?id=3744 题意:一条路,起点为1,有概率p走一步,概率1-p跳过一格(不走中间格的走两步),有n个点不能走,问到达终点(即最后一个坏点后)不踩坏点的 ...

  6. ZOJ 3687 The Review Plan I 容斥原理

    一道纯粹的容斥原理题!!不过有一个trick,就是会出现重复的,害我WA了几次!! 代码: #include<iostream> #include<cstdio> #inclu ...

  7. 内功心法 -- java.util.LinkedList<E> (2)

    写在前面的话:读书破万卷,编码如有神--------------------------------------------------------------------下文主要对java.util ...

  8. PHP -- 页面传值的6种获取方法

    1.PHP4以后获取传值的方法 一般在页面中传值常见的是POST.GET和COOKIE几种,所以下面我也主要介绍这几种.PHP4以后都采用的是$_POST.$_GET等数组来获取网页传值.在PHP3. ...

  9. URAL 1993 This cheeseburger you don't need 模拟题

    This cheeseburger you don't need 题目连接: http://acm.timus.ru/problem.aspx?space=1&num=1993 Descrip ...

  10. Druid 配置_StatViewServlet配置

    https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatViewServlet%E9%85%8D%E7%BD%AE Druid内置提供 ...