我的Xcode编译/存档时间比我想象的要长。因此,我正在寻找一种更快地构建项目的方法,并且我知道我使用的是不高端的Mac。我正在考虑升级到新的Mac。所以我的问题是:
在编译/存档项目时,Xcode主要依赖RAM还是CPU?也就是说,我应该在新的Mac中寻找什么,才能加速构建和存档过程?
我的Xcode编译/存档时间比我想象的要长。因此,我正在寻找一种更快地构建项目的方法,并且我知道我使用的是不高端的Mac。我正在考虑升级到新的Mac。所以我的问题是:
在编译/存档项目时,Xcode主要依赖RAM还是CPU?也就是说,我应该在新的Mac中寻找什么,才能加速构建和存档过程?
你有没有尝试过找出Xcode在构建项目时实际花费了多少时间来完成哪些任务?通常情况下,开发人员在项目构建之间只会进行非常小的更改(例如,在数百或数千个文件中仅编辑一个或两个文件),而Xcode通常非常擅长自动跳过不必要的步骤(例如,只编译或复制自上次构建以来真正发生变化的文件)。但在某些情况下,Xcode无法正确地解决这个问题,并执行比实际需要更多的工作。此外,您的项目/构建设置可能不太合适,迫使Xcode执行比实际需要更多的工作。在某些情况下,可以用其他构建步骤替换一些构建步骤,这样可以执行得更快。
例如,我已经能够将一个大型项目的构建时间从15分钟减少到不到5分钟的完整、干净的发布构建。对于另一个项目,我已经能够优化构建过程,并将开发人员的重建时间从超过40秒减少到在编辑几个源文件时不到10秒。
像所有的优化一样: 除非你真正知道问题所在,否则你无法进行优化。那么Xcode到底在哪里浪费了时间? 它是构建了所有的源文件吗? 是太多源文件花费了太长时间还是只编译了几个非常大或者包含太多头文件的源文件? 是预编译头文件需要太长时间来构建吗?每一次都需要重新构建吗?它是将目标文件链接在一起吗?它是动态生成某些文件吗?是与依赖库或框架链接构建吗?是复制资源文件吗?还是处理资源文件吗?