現象
項目文件眾多,每次 Clean 後全量編譯耗時極長,影響開發效率。
原因
Clean 會刪除所有中間產物(DerivedData),導致下次編譯無法利用增量編譯緩存。
- 大量 Swift/Objective-C 文件、依賴庫、CocoaPods 組件需重新編譯。
緩解策略
- 避免頻繁 Clean:日常開發僅用
Build(Cmd+B),Xcode 增量編譯機制會自動處理變更。
- 模塊化拆分:將獨立功能拆為 Framework/Static Library,使用二進制依賴(預編譯 .framework),減少源碼編譯量。
- 優化 Build Settings:
- 啟用
Parallelize Build(並行編譯)。
- 設置
Compilation Mode = Incremental(Debug 下默認)。
- 減少不必要的
Header Search Paths。
- 使用 Xcode 14+ 的 Build System:新建構系統對大項目優化顯著。
- 硬件升級:SSD、大內存(32GB+)、多核 CPU(M 系列芯片表現優異)。
心態調整
大項目編譯慢屬正常現象,合理利用增量編譯、模塊化、硬件升級綜合改善,無需過度糾結。