【发布时间】:2017-03-17 07:50:07
【问题描述】:
随着我的项目在过去一年的增长,它的构建时间也在增长。在过去的几个月里,它从 4 分钟缩短到了 7 分钟左右(时间包括 GitHub 拉取、单元测试等)。
我通过-Xfrontend -debug-time-function-bodies 进行了调查,以找到编译速度慢的行,并更改了该代码。
我认为现在是项目规模的问题; 182 个 Swift 文件,约 31K 行。 23 个故事板,52 个 XIB。这是一个带有少量 Cocoapods 依赖项的常规 UIKit 应用程序。
大部分构建时间都花在“编译 Swift 源文件”阶段。
与编辑-构建-调试周期相比,我更关心的构建机器时间也在变慢。
可以做些什么来缩短构建时间?
【问题讨论】:
-
将一些代码分解到框架中。不必在每次更改某些内容时都编译它们。
-
你试过不用xibs吗?我在 Swift 1.x 中构建了一个项目,没有 xib,编译时间也没有明显差异,但后来我加入了一家到处都有 xib 的公司,所以没有机会用一个大项目来测试它。
-
物理硬件也起着重要作用,具有快速 SSD 和大量物理线程的 Mac 将处理 Swift 源文件。
标签: swift xcode compiler-optimization compile-time