前言
使用 Mac 开发也有几个年头了,积累了一些效率工具和开发工具,今天整理了一下并分享给大家,工具几乎都是开源免费的,也期待大家有更多好的工具推荐给我,我补充上去。
包管理器Homebrew[1]
Homebrew 是一款 Mac OS 平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。算是 Mac 系统的必备环境了。
有了它,比如你要下载下面提到的 node 环境,你根本不用考虑 node 去哪个地方下,只需要执行brew install node命令就好。
如果大家不习惯使用命令操作,还可以使用这款可视化的工具cakebrew[2]。
Npm[3]
Npm 其实是 Node.js 的包管理工具,安装 Node 后就会有 npm 环境了。有很多 npm 包是很好的工具,以我经常用的一个举例吧
anywhere[4]
它可以随时随地将你的当前目录变成一个静态文件服务器的根目录,只需要你在当前目前下执行一个anywhere命令。
这样就实现了一个局域网下,文件互传的功能,我经常使用它来和同事之间传递文件,毕竟内网传递速度就是快。
Gem[5]
Gem 是 Ruby 模块的包管理器。如果你是 iOS 开发者,对这个一定不会陌生,因为 CocoaPods 本身就是一个 ruby 模块,我们可以通过 gem 来安装 CocoaPods,当然还可以通过 Homebrew 来安装。
日常工具Snipaste[6]
最好用的截图工具,我要向大家强烈安利它,不仅有正常的截图、编辑等功能,还有一个其他软件都没有而且我经常用的功能 -- 贴图,可以直接将图片像便签一样贴在桌面上。
Snipaste.pngMWeb[7]
专业的 Markdown 写作、记笔记、静态博客生成软件,用起来真的比较方便,其实还有会朋友推荐 Typora 这款软件,但是我不太喜欢那种预览区和编辑区在一起的方式,如果对 Typora 有兴趣的,也可以去看看。
MWeb.pngGo2Shell[8]
Go2Shell 可以让 Finder 中打开一个指向当前目录的终端窗口。
Go2Shell.pngParallel Desktop[9]
Mac 上的虚拟机软件,有的软件没有 Windows 版本,或多或少需要一个虚拟机安装其他系统。
我有的时候会通过这种方式从 Mac 电脑向 Mac 不支持写的硬盘中拷贝文件。
Mircrosoft Remote Desktop[10]
微软官方免费远程桌面控制 Windows 的软件,我之所以用这款软件,是因为我上家公司服务器系统是 Windows Server 的,如果也有类似需求或者需要远程 Windows 系统的读者,可以看看这款软件。
Remote Desktop - VNC[11]
远程连接 Mac 的工具。我只所以用这款软件,是因为我前不久需要连接 Mac Mini 做一些 iOS 自动化打包的事情,有类似需求的读者,可以看看这款软件。
Stretchly[12]
这是一款休息时间提醒应用,非常适合我们程序员这类写 Bug 时聚精会神,忘记起来活动活动的职业。
stretchly.pngAlfred[13]
这个我觉得根本无需介绍,神器,使用 macOS 的同学应该都知道。一句话来说就是,Alfred 是 macOS 上神级的效率应用,能够在实际操作中大幅提升工作效率。
uTools[14]
生产力工具集
utools.pngSwitchHosts[15]
是一个管理、切换多个 hosts 方案的可视化工具。
SwitchHosts.pngezip[16]
Mac 文件解压缩工具。
ezip.pngDozer[17]
一款免费的 Mac 菜单栏图标隐藏软件,开启软件后,在 Mac 菜单栏会出现两个小圆点,将两个小圆点拖拽至你需要隐藏的应用图标的右边,点击第二个小圆点,便能完成隐藏。
Dozer.gif开发工具Sourcetree[18]
Sourcetree 是我用过最好用的版本管理(Git)客户端软件。
Sourcetree.pngCharles[19]
非常优秀的抓包工具
Charles.pngiTerm2[20]
iTerm2 + Oh My Zsh可以实现命令自动补全、自定义主题等等功能,强烈推荐,相关安装教程有很多,可以自己去找找。
只上一张效果图,大家感受一下吧
iterm2.jpegPostman[21]
接口测试工具,如果不想安装软件,也可以安装谷歌浏览器扩展。
Postman.pngFinalShell[22]
FinalShell 是一体化的的服务器,网络管理软件,不仅是 ssh 客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求。
国人开发的 SSH 客户端工具,亲验好用。
FinalShell.jpegiOS 工具JSONConverter[23]
JSONConverter 是 MAC 上 iOS/Flutter 开发的辅助工具,可以快速的格式化 JSON 数据并转换生成对应的模型类属性,目前支持 Objective-C、Swift、Flutter 以及目前流行的第三方库:SwiftyJSON、HandyJSON,ObjectMapper, 可以灵活选择构建 class/struct,并支持配置类名前缀等,省去手敲模型的麻烦,借此提高开发效率。
JSONConvert.pngLSUnusedResources[24]
用于在 Xcode 项目中查找未使用的图像和资源。
LSUnusedResourcesExample.gifBuildTimeAnalyzer[25]
展示 Swift 编译构建时间。
BuildTimeAnalayer.pngImageOptim[26]
图片压缩工具
ImageOptim.pngLookin[27]
Lookin 可以查看与修改 iOS App 里的 UI 对象,类似于 Xcode 自带的 UI Inspector 工具,或另一款叫做 Reveal 的软件。但借助于“控制台”和“方法监听”功能,Lookin 还可以进行 UI 之外的调试。此外,虽然 Lookin 主体是一款 macOS 程序,它亦可嵌入你的 iOS App 而单独运行在 iPhone 或 iPad 上。最后,Lookin 完全免费。
Lookin.jpegLinkMap[28]
这个工具是专为用来分析项目的 LinkMap 文件,得出每个类或者库所占用的空间大小(代码段 + 数据段),方便开发者快速定位需要优化的类或静态库。
LinkMap.pngSwiftFormat For Xcode[29]
SwiftFormat 是一个代码库和命令行工具,用于在 macOS 或 Linux 上重新格式化 Swift 代码。
Hopper[30]
逆向工程工具,可让您反汇编、反编译和调试应用程序。
Hopper.jpegiTools[31]
这个只要是做 iOS 开发的应该都知道,我就不过多介绍了。
Network Link Conditioner[32]
这是一个来自苹果官方的工具,它可以模拟任何网络环境,如 3G,Edge 等等,也可以重新定义当前的网络环境,如网络延迟、带宽或丢包率。
Network Link Conditioner.pngXSimulatorMngr[33]
XCode 模拟器管理器,用于管理 iOS 模拟器的开发者工具。
XSimulatorMngr.pngKnuff[34]
Apple 推送通知服务 (APN) 的调试应用程序
Knuff.pngInjectionIII[35]
允许您在 iOS 模拟器中增量更新函数和类、结构或枚举的任何方法的实现,而无需重新构建或重新启动应用程序。
InjectionIII.gifDoKit[36]
滴滴推出的 APP 效率工具
DoKit.jpegProfilesManager[37]
mobileprovision 文件管理器工具
ProfilesManager.jpeg在线工具JSON[38]
JSON 解析,用来格式化 JSON
tinypng[39]
在线压缩图片
tableconvert[40]
将表格转成 md,excel 等各种形式,我经常会用来写一些表格用来转成 md
DownGit[41]
下载 Github 仓库中某一个指定文件或者文件夹
swiftify[42]
快速将 Objective-C 代码转换为 Swift
有一个技术的圈子与一群志同道合的朋友非常重要,来我的技术公众号及博客,这里只聊技术干货。
参考资料
[1]
Homebrew:
[2]
cakebrew:
[3]
Npm:
[4]
anywhere:
[5]
Gem:
[6]
Snipaste:
[7]
MWeb:
[8]
Go2Shell:
[9]
Parallel Desktop:
[10]
Mircrosoft Remote Desktop:
[11]
Remote Desktop - VNC:
[12]
Stretchly:
[13]
Alfred:
[14]
uTools:
[15]
SwitchHosts:
[16]
ezip:
[17]
Dozer:
[18]
Sourcetree:
[19]
Charles:
[20]
iTerm2:
[21]
Postman:
[22]
FinalShell:
[23]
JSONConverter:
[24]
LSUnusedResources:
[25]
BuildTimeAnalyzer:
[26]
ImageOptim:
[27]
Lookin:
[28]
LinkMap:
[29]
SwiftFormat For Xcode:
[30]
Hopper:
[31]
iTools:
[32]
Network Link Conditioner: %20IO%20Tools
[33]
XSimulatorMngr:
[34]
Knuff:
[35]
InjectionIII:
[36]
DoKit: #/index/home
[37]
ProfilesManager:
[38]
JSON:
[39]
tinypng:
[40]
tableconvert:
[41]
DownGit: #/home
[42]
swiftify: