打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
常用的iOS开发或者优化的小工具

引言:其实这个网站已经有了很长时间,但是一直都没有写下一篇博文,可能是没有时间,可能是偷懒,可以找出一大堆的理由,但是久而久之,发现学的越多,似乎知道的就越少了,所以还是决定记录点什么,哪怕只是一些憋足的字也好,坚信:坚持一些东西,总会获得一些回报。

下面介绍一下我常用的iOS开发或者优化的小工具

由于很多工具大多数博客都已经介绍过了,我就列举一些我认为还不错但是大家不常列举的:


Crafter

你是否经常见一个Project之后你经常会建立一个Podfile,然后把自己一些几乎每个项目都要用的第三方库加进去或者,添加ignore文件等等重复的事情,Crafter 是一个可以自动化初始化你xcode工程的默认配置,是由Ruby语言写的。一个script即可以自动化帮你配置好你的项目。

Wasted

你是否关心过一个问题,项目体积越来越大,然而图片的体积占了大部分,Wasted只要选取一个ipa文件就可以帮你分析出哪些可以优化,然后生成了一个文件夹是他帮你优化过的图片还有一个表格,你可以选择性的替换原项目的图片,肉眼几乎感觉不到优化前后的区别。

Unused

之前看到很多人已经说过可以用一个script来检测出项目中未使用过的图片然后用生成一个文件来告诉你哪些没有使用过,这个工具用可视化的界面来检测告诉你更亲切。

Linguan

是否遇到过一种情况项目起初只有一种语言,经过后续很多版本更新之后老板要求你出个多过语言版本,但是那么多的项目文件和xib,显然手动的去寻找是不科学的,这款工具就可以帮你找出项目里的所有string包括xib中的然后可以导出.Strings格式,然后交给你们翻译的就可以了。

然后在翻译一段iOS小文(水平有限)


声明Blocks内联

译自Calling Blocks Inline

我最新发现了一个在oc中使用Blocks非常有趣的的方法,它定义起来也许像in javascript里那样,样子是这样的:

12345678910111213141516
const NSInteger value = (^NSInteger {    switch (type) {        case TypeOne:            return 1;        case TypeTwo:            return 2;        case TypeUnknown:        case TypeUnspecified:            return NSNotFound;        default:            return 0;    }}());

首选,它在定义这个Block的同时赋值给了我们的变量,然后指定了变量是const类型,Block内所有相关的代码都是为了计算出值赋值给变量,这样一来代码更容易阅读,而且这都可以被GCC code block extension所识别,这种方法实现的有点就是可以有return这个关键词,这使得我们可以是用switch并且循环里不使用break,缺点是不得不重复声明变量的类型,而且当我们遇到UISwipeGestureRecognizerDirection是非常讨厌的,例如:

123456789
const BOOL anyValueIsXyz = (^BOOL {  for (QwertyValue *value in values) {    if (value.isXyz) {      return YES;    }  }  return NO;}());

大家认为呢?

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【我做了个小工具,帮你提升100倍开发效率!】
开源工具 SAP UI5 Tools 介绍
编写干净代码的 9 条必须知道的规则
汉斯哈哈哈ios
iOS/OS X开发:各种工具快到碗里来!
从小白到菜鸟:持续集成说
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服