17个提升iOS开发效率的必用工具
时间就是金钱。编码效率的提升意味着更多的收入。可是当我们的开发技巧已经到达一定高度时,如何让开发效率更上一层楼呢?答案就是使用开发工具!在这篇文章中,我会向你介绍一些帮助我们提升编码速度和工作效率的工具。
Xcode插件
几乎所有开发者都知道Alcatraz是一个开源的包管理工具,可以让我们更轻松地管理各种插件。接下来就介绍下我的最推荐的10个插件:
在编辑字符串的时候,它会在代码上方生成一个字数统计的提示框。当你需要编辑多行文本时,可以在弹出的文本框中编辑字符串内容,插件会自动进行字符转义的工作,并实时在代码中更新。

图片由Dirk Holtwick提供
一个简洁的可视化颜色插件。在你编辑颜色的RGB值的时候,会在代码上方出现一个小的色块,显示对应的颜色。点击色块还会弹出一个颜色编辑器,在编辑器中得到的色值会自动填入colorWithRed:green:blue:alpha:方法中,贴心!

当你在编译项目的时候,是否曾为Xcode爆出的某个奇怪的错误绞尽脑汁?我想答案是肯定的,并且我们都明白,其中的一种错误的解决办法就是—删除DerivedData!尽管我们有很多种方法解决这个问题,但Derived Data Exterminator无疑是最便捷的那种。在我们将它集成到Xcode后,就可以一键清理Derived Data。

你是否已经厌倦了反复写NSLocalizedString?如果是,那么QuickLocalization插件可以助你一臂之力。当你在编辑字符串的时候,只需要按下option+shift+d,就可以将@“Any String”转换成NSLocalizedString(@"Any String", nil)。而且还可以通过修改配置来定义要出现在comment字段中的内容。我已经离不开它了!

过去,我不得不频繁查看资源文件夹以查找合适的图片的名称。使用KSImageNamed插件后,会自动弹出图片名称的列表以供选择,而且还有缩略图,十分便捷。

图片由Kent Sutherland提供
代码审查是Netguru大神们生活方式的一部分。尽管大部分bug会在此阶段被检查出来,但我们仍然会在使用他人代码的时候发现问题。这个时候,ShowInGithub大显身手的时候到了,只需要按下ctrl+C或ctrl+G,就可以立即打开commit或file页面,同时支持Github和BitBucket,非常棒!

Switch语句相当繁琐。虽然它清楚地列出了在每种情况下应该处理的方式,但一个个填入枚举值那真是浪费时间。SCXcodeSwitchExpander插件可以帮我们完成这个工作,它可以自动获得所有的枚举值填入相应的位置,而我们只需在每个枚举值下面填入对应的逻辑即可,方便极了!

图片由Stefan Ceriu提供
尽管给所有的文件都做上注释的感觉很棒,但是你是否想过这得花多少时间?事实上,感谢VVDocumenter-Xcode,真不需要多少时间。它可以自动解析方法的参数及返回值,并形成Javadoc风格的注释。我们写的所有开源代码都使用了这个插件。

图片由Wei Wang提供
这个插件可以在编码的时候自动补全代码。它的强大之处在于,使用了与”Open Quickly”功能相同的算法,如,当你想使用“tableView:cellForRowAtIndexPath:”方法,原来需要输入冗长的“- (void)tableView:(UITableView *)tableView ce”才能匹配出方法,而现在只需要”- cellFor”就行,省事多了。

图片由FuzzyAutocomplete提供
这是我最喜欢的插件,我完全想象不了如果编码的时候没有它怎么办。通过配置,我们可以使用光标或者不精确的选择就可以剪切或者拷贝代码行,可以在粘贴代码的时候不触发代码格式化,还可以通过在.m文件中拷贝方法,粘贴进.h文件的时候就可以得到自动格式成的方法声明,还有好些功能都可以实现。XcodeBoost,值得你拥有!

图片由Michael Fortin提供。
推荐应用
大部分时候,我使用Xcode进行编码,但同时我也会频繁使用其他的一些应用。
根据iTunes Connect Guidelines的要求,屏幕截图不应当包含状态栏,这个工具可以帮助我们平滑地去除状态栏,同时支持iPhone和iPad的屏幕截图。这个小应用虽然只做一件事,但是做得很好。

你是否已经厌倦了在没有预览的情况下写markdown文件?又或者你使用的编辑器需要按下按钮才能显示预览效果?MacDown是一款方便的的markdown编辑器,它可以在markdown代码右边实时显示预览效果。

SimPholders是一个简单便捷的小应用,它会在Mac的工具栏上设置一个快捷按钮,开发者通过它就可以快速打开模拟器或是最近使用的应用。特别是当你需要处理应用文件夹内容的时候,你再也不需要一次次地点进模拟器和应用的文件夹了,用SimPholders就够了。

这是一个来自苹果官方的工具,它可以模拟任何网络环境,如3G,Edge等等,也可以重新定义当前的网络环境,如网络延迟、带宽或丢包率。Network Link Conditioner也可以应用于真机,但是使用的时候需要小心,使用这个工具不仅仅对使用者起作用,还会影响整个网络。
Rest Console是一个基于Google Chrome的插件,它提供了一个简单易用的REST可视化界面,使得调试API的工作变得更加有趣。Rest Console可以将返回结果格式化,使之便于阅读。同时它也支持oAuth。

使用LLDB可以显著减少开发者的调试时间。Facebook开发了一套用于LLDB的命令十分有效,特别是当出现了一些难以复现的问题的时候。虽然熟悉它需要一定的时间,但是绝对值得。
SQLiteManager是一个Firefox上的管理SQLite的小插件。在用到CoreData的时候配合使用很方便。我常常觉得Xcode应该集成这方面的功能。
结语
如你所见,我在开发中使用了很多工具,每种工具都可以帮我节省许多时间。有了它们,我才能更专注于项目并写出更好的代码。
17个提升iOS开发效率的必用工具的更多相关文章
- iOS之17个提升iOS开发效率的必用工具
时间就是金钱.编码效率的提升意味着更多的收入.可是当我们的开发技巧已经到达一定高度时,如何让开发效率更上一层楼呢?答案就是使用开发工具!在这篇文章中,我会向你介绍一些帮助我提升编码速度和工作效率的工具 ...
- 10个提升iOS开发效率的必用工具
Xcode插件 几乎所有开发者都知道Alcatraz是一个开源的包管理工具,可以让我们更轻松地管理各种插件.接下来就介绍下我的最推荐的10个插件: 10.HOStringSense 在编辑字符串的时候 ...
- fir.im Weekly - 17 个提升 iOS 开发效率的必备工具
本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感. iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如 ...
- iOS-提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时 ...
- iOS开发——实用篇&提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时 ...
- 使用Charles Proxy提升iOS开发效率
以前做前端开发的时候,使用最多的工具就是 Fiddler ,用来定位问题.模拟特定场景非常方便,极大提升了开发效率.而转做 iOS 开发以后,一大头疼的问题是 Fiddler 没有 Mac 版,幸亏找 ...
- <转>提高iOS开发效率的方法和工具
介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时在使用AppCode等其他的ID ...
- 提高iOS开发效率的方法和工具
http://www.cocoachina.com/ios/20150717/12626.html 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先 ...
- 【老孟Flutter】6种极大提升Flutter开发效率的工具包
老孟导读:本文介绍6种极大提升Flutter开发效率的工具包. [1] 强大的日志软件包 在开发 Flutter 的过程中打印日志是常用的调试方式之一,但 Flutter 内置的日志打印非常简单,下面 ...
随机推荐
- 工程师必知ZigBee技术问答精华汇总
本文是关于ZigBee技术的一些基础知识.行业应用方面的精华汇总.希望通过本文的分析,能让大家对ZigBee技术的起源.发展.特点.前景及其在通信网络中的相关应用有全面直观的了解. 1.基础知识篇 Q ...
- UIAutomation识别UI元素
MS UI Automation(Microsoft User Interface Automation:UIA)是随.net framework3.0一起发布的,虽然在如今这个几乎每天都有各种新名词 ...
- Android Task 相关
在日常开发过程中,只要涉及到activity,那么对task相关的东西总会或多或少的接触到,不过对task相关的一些配置的作用一直理解的还不是很透彻,官方文档在细节上说的也不够清楚,要透彻理解还是得自 ...
- 关于Mysql当中"Got error 134 from storage engine"的解决办法
今天在开发程序的时候,有一个表, 当调用这个类别时总是调用不出来,很是恼火.后台打印sql语句为: SELECT * FROM `xx_article` WHERE `cid1` =6 LIMIT 0 ...
- 不允许从数据类型 nvarchar 到 varbinary 的隐式转换
一:错误截图 二:解决 数据库里面的数据类型错了,应该是varchar,而我选了varbinary.太粗心了!
- JavaScript & HTML5 Canvas 概览 更新时间2014-0411-1805
HTML Canvas 坐标体系:矩形区域的左上角为坐标原点(0,0),向右为x轴,向下为y轴. 检测浏览器是否支持Canvas(IE系列从IE9开始支持): <!DOCTYPE html> ...
- 《ACM国际大学生程序设计竞赛题解I》——6.10
Pku 1143: Description Christine and Matt are playing an exciting game they just invented: the Number ...
- javascript随机将第一个dom中的图片添加到第二个div中去
javascript随机将第一个dom中的图片添加到第二个div中去,此代码的是一个简单的例子,将第一个div中的五张图片中,提取随机两张显示到第二个div中. <!DOCTYPE html P ...
- linux —— 学习笔记(软件操作:安装、卸载、执行)
目录: 0.相关基本命令 1.安装软件 2.卸载软件 3.打开软件 0.相关基本命令 与软件操作相关的主要命令有:dpkg 和 apt-get . dpkg : “dpkg ...
- STRUCTS 2 LABLE
{LJ?Dragon}[标题]structs2标签的作用 {LJ?Dragon}[Diary]2017年,愉快的开始:离别不一定总伤感,虽然只是安慰着自己......... 问与答 问题 在Strut ...