iOS-提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具
这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具。
IDE
首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时在使用AppCode等其他的IDE,在这里我主要介绍Xcode中提升开发效率的方法。
1.善用快捷键
快捷键是开发中必不可少的,当你善于使用快捷键的时候,十指在键盘上飞舞,那画面太美,我不敢想象。
2.常用代码片段
开发中有一些常用的代码,可以放到代码片段中,然后下次你就可以使用快捷方法来使用这些代码了,给大家看下我的Xcode中部分代码片段:
3.Xcode插件
我想插件是Xcode必不可少的把
除此之外,我自己还经常用到的插件有:
在此强烈推荐给大家。
你可能想,如果没有我要用的插件怎么办?少年,这个时候就要自己动手丰衣足食了,我想你可以看看这个Xcode6插件开发入门。
4.注释
注释的作用就不多说了,而且现在公司都要求代码必须有注释。
之前一直在用 喵神onevcat 开源的 VVDocumenter-Xcode.
但是后来觉得这种注释会有这样一个问题:一个注释多三行
1
2
3
4
|
/** * 顶部公告btn */ @property (nonatomic, strong) UIButton *topAnnouncementBtn; |
接口用这种方法会简单明了,但是属性的话,总感觉.h文件好多东西(其实没几个属性啊??????)
后来换成这样:
1
2
|
/**顶部公告btn */ @property (nonatomic, strong) UIButton *topAnnouncementBtn; |
还是多一行,再后来换成这样:
1
|
@property (nonatomic, strong) UIButton *topAnnouncementBtn; // 顶部公告btn |
但是这种方式,在你使用这个属性的时候,是不会有注释提示的。没有就没有把,遇见不明大意的属性,到时候再跳到.h 文件 看一眼。(“呸,你怎么这么容易就妥协了!!!”,我当时应该在心里暗暗骂自己的)
之后某天在微博上看到 芳仔小脚印 的博客 我是如何收拾代码的 中介绍她是这样注释属性的:
1
|
UIButton *btnSend; /**< 发送按钮 */ |
试用了一下,很方便。之后一直用这种方法做属性注释,在这里分享给大家。
感谢 芳仔小脚印 的分享。
网络数据相关
1.调试接口
少年,你还在写方法调试接口吗?如果是,那你一定需要下面这2个了哈:
DHC 在线调试接口,支持HTTP和HTTPS呦。
Postman 一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。(感谢叶孤城___提醒)
2.JSON数据编辑
废话不多说,直接上图:
UI相关
1.距离
不行!说的是20px!差1px,2px,5px,10px,都不算20px!
遇到有像素眼的设计师,想哭的心情总是有。但是他们可能有时候会忘记标X、Y,或者就是宽高,下面是我司UI给的一张图:
魂淡,说好的X,Y呢?
然后我最开始是这样做的
可是总会有辣么一点误差,而且费眼。。。后来我偶然听一个产品朋友说他们在用马克鳗标图,它有免费和收费2个版本,免费版本可以使用基本功能,感觉还不错。
今天喵神onevcat在微博发了一个测量的工具:Pixel Winch ,试了一下,比马克鳗好使。
2.图片压缩
我们UI就不太注重图片的大小,尼玛,有一次给的图片有4M多,害我自己还得压缩一遍
tinypng,保质压缩,我感觉还不错,推荐给我们UI和后台,他们用过之后都说好
tinypng批量压缩图片脚本 配套使用更佳。(感谢newbee_nAn 提供)
3.AppIcon
AppIcon只需要UI提供一张1024*1024的图就可以了,具体的icon可以用Prepo生成
两地办公
假设这么一种情况:公司用的是SVN,公司一台公司电脑,家里一台自己电脑,有时候可能想回来后接着敲代码,怎么办?
再假设这么一种情况:公司用的是SVN,产品想实现一种效果,但是你又不确定能不能写出来,所以你可能会纠结要不要在公司项目上改动,怎么办?
如果有上述两种烦恼,那么Github 和 Bitbucket 是您的首选,具体选哪个,这里有一篇对比文章:GitHub vs. Bitbucket 不只是功能不同.
Github
Github上好的开源项目太多,一个一个的star,太慢了,怎么破?
1
|
language:Objective-C stars:>900 |
这个其实就是Github的Advanced search功能:
小伙伴们切记啊,star后并不代表你就掌握了,只有真正深入了解后才是自己的。
没有效率的iOS开发者们只能默默成为 加班狗!
据说大神们都在用的提升编码速度和工作效率的工具,今天小编给搜罗来了。以下17款,肯定有你心仪的工具。赶快get吧!
1.SQLiteManager
SQLiteManager是一个Firefox上的管理SQLite的小插件。在用到CoreData的时候配合使用很方便。我常常觉得Xcode应该集成这方面的功能。它很简洁,我很喜欢这一点。
2.Chisel
使用LLDB可以显著减少开发者的调试时间。Facebook开发了一套用于LLDB的命令十分有效,特别是当出现了一些难以复现的问题的时候。虽然熟悉它需要一定的时间,但是绝对值得。
3.Rest Console
Rest Console是一个基于Google Chrome的插件,它提供了一个简单易用的REST可视化界面,使得调试API的工作变得更加有趣。Rest Console可以将返回结果格式化,使之便于阅读。同时它也支持oAuth。
4.Network Link Conditioner
这是一个来自苹果官方的工具,它可以模拟任何网络环境,如3G,Edge等等,也可以重新定义当前的网络环境,如网络延迟、带宽或丢包率。Network Link Conditioner也可以应用于真机,但是使用的时候需要小心,使用这个工具不仅仅对使用者起作用,还会影响整个网络。
5.SimPholders
SimPholders是一个简单便捷的小应用,它会在Mac的工具栏上设置一个快捷按钮,开发者通过它就可以快速打开模拟器或是最近使用的应用。特别是当你需要处理应用文件夹内容的时候,你再也不需要一次次地点进模拟器和应用的文件夹了,用SimPholders就够了。
6.MacDown
你是否已经厌倦了在没有预览的情况下写markdown文件?又或者你使用的编辑器需要按下按钮才能显示预览效果?MacDown是一款方便的的markdown编辑器,它可以在markdown代码右边实时显示预览效果。
7.Status Barred
根据iTunes Connect Guidelines的要求,屏幕截图不应当包含状态栏,这个工具可以帮助我们平滑地去除状态栏,同时支持iPhone和iPad的屏幕截图。这个小应用虽然只做一件事,但是做得很好。
8.XcodeBoost
通过配置,我们可以使用光标或者不精确的选择就可以剪切或者拷贝代码行,可以在粘贴代码的时候不触发代码格式化,还可以通过在.m文件中拷贝方法,粘贴进.h文件的时候就可以得到自动格式成的方法声明,还有好些功能都可以实现。XcodeBoost,值得你拥有!
9.FuzzyAutocomplete
这个插件可以在编码的时候自动补全代码。它的强大之处在于,使用了与”Open Quickly”功能相同的算法,如,当你想使用“tableView:cellForRowAtIndexPath:”方法,原来需要输入冗长的“- (void)tableView:(UITableView *)tableView ce”才能匹配出方法,而现在只需要”- cellFor”就行,省事多了。
10.VVDocumenter-Xcode
尽管给所有的文件都做上注释的感觉很棒,但是你是否想过这得花多少时间?事实上,感谢VVDocumenter-Xcode,真不需要多少时间。它可以自动解析方法的参数及返回值,并形成Javadoc风格的注释。我们写的所有开源代码都使用了这个插件。
11.SCXcodeSwitchExpander
Switch语句相当繁琐。虽然它清楚地列出了在每种情况下应该处理的方式,但一个个填入枚举值那真是浪费时间。SCXcodeSwitchExpander插件可以帮我们完成这个工作,它可以自动获得所有的枚举值填入相应的位置,而我们只需在每个枚举值下面填入对应的逻辑即可,方便极了!
12.ShowInGithub
代码审查是Netguru大神们生活方式的一部分。尽管大部分bug会在此阶段被检查出来,但我们仍然会在使用他人代码的时候发现问题。这个时候,ShowInGithub大显身手的时候到了,只需要按下ctrl+C或ctrl+G,就可以立即打开commit或file页面,同时支持Github和BitBucket,非常棒!
13.KSImageNamed
过去,我不得不频繁查看资源文件夹以查找合适的图片的名称。使用KSImageNamed插件后,会自动弹出图片名称的列表以供选择,而且还有缩略图,十分便捷。
14.QuickLocalization
你是否已经厌倦了反复写NSLocalizedString?如果是,那么QuickLocalization插件可以助你一臂之力。当你在编辑字符串的时候,只需要按下option+shift+d,就可以将@“Any String”转换成NSLocalizedString(@"Any String", nil)。而且还可以通过修改配置来定义要出现在comment字段中的内容。我已经离不开它了!
15. Derived Data Exterminator
当你在编译项目的时候,是否曾为Xcode爆出的某个奇怪的错误绞尽脑汁?我想答案是肯定的,并且我们都明白,其中的一种错误的解决办法就是—删除DerivedData!尽管我们有很多种方法解决这个问题,但Derived Data Exterminator无疑是最便捷的那种。在我们将它集成到Xcode后,就可以一键清理Derived Data。
16.一个简洁的可视化颜色插件。
在你编辑颜色的RGB值的时候,会在代码上方出现一个小的色块,显示对应的颜色。点击色块还会弹出一个颜色编辑器,在编辑器中得到的色值会自动填入colorWithRed:green:blue:alpha:
17.HOStringSense
在编辑字符串的时候,它会在代码上方生成一个字数统计的提示框。当你需要编辑多行文本时,可以在弹出的文本框中编辑字符串内容,插件会自动进行字符转义的工作,并实时在代码中更新。
时间就是金钱!
别让自己落后了别人。
iOS-提高iOS开发效率的方法和工具的更多相关文章
- iOS开发——实用篇&提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时 ...
- <转>提高iOS开发效率的方法和工具
介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时在使用AppCode等其他的ID ...
- 提高iOS开发效率的方法和工具
http://www.cocoachina.com/ios/20150717/12626.html 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先 ...
- 极大提高Web开发效率的8个工具和建议(含教程)
面对复杂的 Web 应用的开发,良好的流程和工具支持是必不可少的,它们可以让日常的开发工作更加顺畅.更加高效.本文介绍了6个Web开发利器以及相关的教程,帮助你在开发.调试.集成和发布过程极大地提高效 ...
- 提高你开发效率的十五个Visual Studio 2010使用技巧
提高你开发效率的十五个Visual Studio 2010使用技巧 相信做开发的没有不重视效率的.开发C#,VB的都知道,我们很依赖VS,或者说,我们很感谢VS.能够对一个IDE产生依赖,说明这个ID ...
- legend2---开发日志11(如何提高终极开发效率)
legend2---开发日志11(如何提高终极开发效率) 一.总结 一句话总结: 实在没必要摸索着做,直接学了做,用专门的东西来做,岂不是要省时省事很多.岂不美哉. 1.vue中的滚动字幕动画效果如何 ...
- 提高 JavaScript 开发效率的高级 VSCode 扩展!
原文:提高 JavaScript 开发效率的高级 VSCode 扩展! 作者:前端小智 Fundebug经授权转载,版权归原作者所有. Quokka.js Quokka.js 是一个用于 JavaSc ...
- 提高python执行效率的方法
python上手很容易,但是在使用过程中,怎么才能使效率变高呢? 下面说一下提高python执行效率的方法,这里只是说一点,python在引入模块过程中提高效率的方法. 例如: 1.我们要使用os模块 ...
- iOS之17个提升iOS开发效率的必用工具
时间就是金钱.编码效率的提升意味着更多的收入.可是当我们的开发技巧已经到达一定高度时,如何让开发效率更上一层楼呢?答案就是使用开发工具!在这篇文章中,我会向你介绍一些帮助我提升编码速度和工作效率的工具 ...
随机推荐
- 谈谈PHP代码规范
[转] http://www.syyong.com/php/Talk-about-PHP-code-specification.html 我向往这样一个php世界,里面没有代码规范之争.你我都一样,都 ...
- NoSQL 数据库分类
类型 部分代表 特点 列存储 Hbase Cassandra Hypertable 顾名思义,是按列存储数据的.最大的特点是方便存储结构化和半结构化数据,方便做数据压缩,对针对某一列或者某几列的查询有 ...
- phoneGap
1.安装参考http://blog.csdn.net/mage694/article/details/16846331 2.API 参考http://phonegap.com/developer/
- 单片机与控制实验(2)——LED点阵显示屏
一.实验目的和要求 了解LED点阵显示的基本原理和实现方法.掌握点阵汉字库的编码和从标准字库中提取汉字编码的方法. 二.实验设备 单片机测控实验系统 LED点阵显示器实验模块 Keil开发环境 STC ...
- Struts 2
<默认>execute -- 默认方法success -- 默认返回值 <配置><package><package name="default&qu ...
- 图论 - Travel
Travel The country frog lives in has nn towns which are conveniently numbered by 1,2,…,n. Among n(n− ...
- dede 简略标题调用标签
一.简略标题调用标签: 1.{dede:field.shorttitle/} 不可以在{dede:arclist}标签中套用,一般放在网页titile处; 2.[field:shorttitle/] ...
- css border属性做小三角标
<!doctype html><html> <head> <title></title> <meta charset="ut ...
- STM32之输入捕获以及小小应用(库)
五一之际,先祝大家五一快乐.其实快乐很简单,工作的人有假放,学习的人也有假放,像我,有假放才有更多的时间学自己想学的东西.51假期学51,可惜没有32假期呀.好了..言归正传,大家听过吸星大法吧..在 ...
- 向mysql中插入Date类型的数据
先看数据库表的定义 date字段为sql.date类型.我要向其中插入指定的日期和当前日期. 一.插入当前日期 思路:先获取当前系统,在将当前系统时间转换成sql类型的时间,然后插入数据库.代码如下 ...