2023开发者必备iOS开发工具
工欲善其事,必先利其器。进行开发工作时,利用并熟练使用恰当的工具可以让工作效率得到大幅度提高。下边会介绍一些在进行iOS开发工作时常用的一些工具,本文并不对其进行展开,对使用方法及工作原理感兴趣的同学可以自行进行更深入的研究。
* 代码管理
Xcode
Xcode 是运行在操作系统Mac OS X上的集成开发工具IDE。Xcode是开发 macOS 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。
![](https://static001.geekbang.org/infoq/6e/6ecf17edf29fbe6282bcb888039abb7f.png)
Cocoapods
Cocoapods是一个用来帮助我们管理第三方依赖库的工具,它可以解决库与库之间的依赖关系,下载库的源码,同时通过创建一个 Xcode 的 workspace 来将这些第三方库与我们的工程连接起来。通过使用 CocoaPods 的能让我们能自动的、集中的、直观的管理第三方库。Cocoapods原理与使用
Sublime text
Sublime Text 是一个文本编辑器(收费软件,可以无限期试用),同时也是一个先进的代码编辑器。可以进行一些快速编辑。
Beyond compare
Beyond Compare 全方位、简洁实用、专业的文件对比工具。快速比较文件和文件夹、合并以及同步、文本比较、合并、表格比较、16进制比较和注册表比较等。代码合并过程中冲突较多时可以使用进行代码检查与合并
Source tree
SourceTree 是一款免费的 Git 和 Hg 客户端管理工具,同时也是Mn版本控制系统工具。支持创建、克隆、提交、push、pull 和合并等操作。SourceTree拥有一个精美简洁的界面,大大简化了开发者与代码库之间的Git操作方式,这对于那些不熟悉Git命令的开发者来说非常实用。
* 开发工具
Postman
Postman是一个接口测试工具。在做接口测试的时Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求数据发送至服务端并获取对应的响应结果,从而验证响应中的结果数据是否和预期值相匹配,并确保开发人员能够及时处理接口中的bug,进而保证产品上线之后的稳定性和安全性。它主要是用来模拟各种HTTP请求的(如:get/post/delete/put..等等),Postman与浏览器的区别在于有的浏览器不能输出Json格式,而Postman更直观接口返回的结果。
ipaguard
Ipa Guard是一款功能强大的ipa混淆工具,不需要ios app源码,直接对ipa文件进行混淆加密。可对IOS ipa 文件的代码,代码库,资源文件等进行混淆保护。 可以根据设置对函数名、变量名、类名等关键代码进行重命名和混淆处理,降低代码的可读性,增加ipa破解反编译难度。可以对图片,资源,配置等进行修改名称,修改md5。只要是ipa都可以,不限制OC,Swift,Flutter,React Native,H5类app。
![](https://static001.geekbang.org/infoq/e0/e0481d123ac01524dcf2702eca3ad61c.png)
Charles
是一个HTTP代理服务器、HTTP监视器、反转代理服务器(即抓包)。当浏览器连接Charles的代理访问互联网时,Charles可以监控浏览器发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request、response和HTTP headers (包含cookies与caching信息)。
InjectionIII
InjectionIII 可以为你的iOS、tvOS和macOS开发项目添加了有限形式的“热重载”功能,当App运行起来进行调整后只需要Command+s进行保存后能够及时显现出来修改变化,而不需要重新运行。这些项目都是用Swift或Objective-C编写的。
Lookin、git仓库
Lookin可以查看与修改iOS App里的UI对象,类似于 Xcode 自带的 UI Inspector 工具,或另一款叫做 Reveal 的软件。也可以对UI视图进行调试,例如修改frame、颜色、透明度等修改后会直观的显示在真机或模拟器中。
Pusher、SmartPush
Pusher与SmartPush都是IOS苹果推送测试程序,Mac OS下的apns工具APP。
* 性能检测
Instruments
xcode自带了一个很好的检查工具instruments,可以检测内存泄漏、还可以查看哪一个方法比较耗时、还可以检测离屏渲染等等,功能上还是比较强大的。可以用快捷键(command + control + i)使其自动运行。Time Profiler:CPU分析工具分析代码的执行时间。Core Animation:离屏渲染,图层混合等GPU耗时。Leaks:内存检测,内存泄漏检测工具。Energy Log:耗电检测工具。
PerfDog
移动全平台iOS/Android性能测试、分析工具平台。快速定位分析性能问题,提升APP应用及游戏的性能和品质。可以获取 FPS、Jank、FTime、CPU、GPU、Memory、Battery 、Network、CTemp等性能参数。(目前已收费)
MLeaksFinder
MLeaksFinder是WeRead团队开源的一款检测 iOS 内存泄漏的框架,其使用非常简单,只需将文件加入项目中,如果有内存泄漏,3秒后自动弹出 alert 来捕捉循环引用。使得可以在开发快速找到80%内存泄漏,而使用 Xcode Leak 工具更适合大范围的,全部的寻找泄漏点。
appuploder
APP开发助手 iOS APP上架到App Store的辅助工具,解决iOS APP上架繁琐费时的情况,帮助跨平台APP开发者上架苹果应用,在没有配置Mac苹果机的情况,实现iOS证书申请,创建iOS开发者证书、iOS发布证书等各类证书,iOS开发者在Windows、Linux或Mac系统中上传IPA到App Store,简化iOS APP上架流程!在任何电脑中轻松快速上架你的APP
![](https://static001.geekbang.org/infoq/31/312cfa5ae4469c7bf3f584cb7ecb0b54.png)
* 其他工具
iTerm
iTerm 是一个为Mac OS X编写的,功能齐全的终端仿真程序;目标是在为用户提供OS X下最佳的命令行体验;字母i代表了本地苹果的外观和风格的程序界面,并把重点放在完整的国际支持; 它合并由两个项目, CTerminal和TerminalX ,而这两者都是基于JTerminal项目;该软件非常有实用和易用性。简单说是一个功能更丰富、使用体验更好的终端
图标工厂
通过1024尺寸的APP Icon一键生成所有尺寸的应用图标。
图片压缩
对图片质量进行压缩处理,缩小图片体积。缩小体积的同时会降低图片质量,如果图片中有包含阴影等透明度内容谨慎使用保证UI还原度。