我喜欢Apple
和他们做的事情,但是Swift
...... 哦上帝!
组态:
MacBook Pro(Retina,13英寸,2014年中)
2,6 GHz Intel Core i5
8 GB 1600 MHz DDR3
SSD 256(最高800 MB/s)
1k课程
10个豆荚
编译时间: 3分钟.
看起来像" 新的最好和惊人的快速,梦想"这种配置是不够的,它的工作原理Google Chrome
-InfiniteLoop(find free memory - eat)
设置HEADERMAP_USES_VFS
到YES
(无变化)
设定Build Settings / Architectures / Build Active Architecture Only
为YES
(一些改进)
设置defaults write com.apple.Xcode PBXNumberOfParallelBuildSubtasks 4
(8)(有时它变得更糟)
设置优化级别-Onone
(无重大改进)
设置调试信息格式 - DWARF
而不是DWARF with dSYM File
禁用Find implicit dependencies
您的计划(没有重大改进)
创建了一个新项目并将所有文件移动到新项目(花费的时间太长并且时间很短)
将编译器从默认更改为其他可用(更糟)
关于如何编写快速编译的Swift代码的严格规则(下面更多细节)
我发现了一些人们描述同样问题的帖子:这里和这里
我想每个人都在等待新的Xcode 8.2 beta 2
地方:
当只发生小的变化时,Xcode不会重建整个目标.(28892475)
但这只是部分正确,我仍然有很长的编译时间 - 从6-12分钟变为3-8分钟.可在此处和此处找到对此的详细描述
此外,我在代码编写过程中遵循了所有这些规则:
链式功能减少
打开选项
对象的隐式类型(特别是字典)
避免?? 操作员(这个非常饿!!)
避免?:运营商
换句话说,不要使用任何" 新的酷功能 ",因为你会等待多年.
还有一个尝试 - 这里描述的解决方法:
转到产品 - >方案 - >编辑方案.在左侧列中选择Build并取消选中"Find implicit dependencies"但是在第一次构建项目时应保持选中此标志.
但是,这种解决方法不是我正在寻找的,这也可以作为临时解决方案.
Swift
是一种痛苦不是因为它很难写,而是因为它很难使用(至少在某些机器上).
为了比较:我有一个Objective-C
2k类的项目和11个pod--干净的编译时间是~30秒.
我还发现了很多关于快速性能的漏洞:
SR-2461
SR-1465
SR-1707
SR-663
和其他许多人一样,名单太长了,其中一些是几年前开的
我的问题是:
Forge.. 7
这个问题对我来说也是非常 令人沮丧的.我们已经尝试了你提到的几个解决方案,但没有一个能够解决.
有一件事是在编译时间做出了显著改善:打开Whole Module Optimization
,同时增加-Onone
中Other Swift Flags
.
看到这个 - 加速Swift编译
我使用的是Swift 3
带Xcode 8.3
.
这个问题对我来说也是非常 令人沮丧的.我们已经尝试了你提到的几个解决方案,但没有一个能够解决.
有一件事是在编译时间做出了显著改善:打开Whole Module Optimization
,同时增加-Onone
中Other Swift Flags
.
看到这个 - 加速Swift编译
我使用的是Swift 3
带Xcode 8.3
.