快速加快Xcode的编译速度

随着项目的增长,项目的编译速度会减慢。 在并行测试程序时,在测试程序时,这一点尤其明显。

首先,让我们找出项目对我们的改进进行编译的时间。 为此,请在终端中输入

defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES 

为此,请转到“产品”部分,按住alt,然后单击“清理生成文件夹”,然后重新组装项目。 我的项目编译了81秒 。 让我们看看改进后的结果。



首先,我们应该找出哪些地方减慢了编译速度。 默认情况下,Xcode不会在问题出处显示警告,但我们可以解决此问题。
最难的地方是出色的功能和类型检查。 因此,我们需要在Build Settings-> Other Swift Flags-> Debug部分中输入这两行。

 -Xfrontend -warn-long-function-bodies=100 -Xfrontend -warn-long-expression-type-checking=100 

(这里我们有100ms的编译时间,我们可以输入任意数字)

图形绘图


我的工作草案示例



我有一个部分耗时13778毫秒,很可能您将没有,但是由于项目的特殊性,我有这样的部分。 由于已经建立了OCR的二叉树。
由于彼此之间有很深的嵌套,并且类型定义仅在开始时(等号之前),因此编译器需要大量时间来了解其前面的类型。 (树需要30行,这是其中的一部分)





之后



我们确定了每个嵌套的类型,警告消失了。

另一个弱点是连续几次短路。





之后

明确指定的类型



修复所有警告后,我们将再次检查项目的构建时间。
现在,该项目的编译速度提高了26秒 ,提高了两倍半。



仍有工作要做,但最明显的问题已解决。

Source: https://habr.com/ru/post/zh-CN439290/


All Articles