概要
R.swiftを複数のモジュールで使用していたのですが、差分ビルドの遅い箇所を分析するとR.swiftの毎回走るコード生成のスクリプトがリソースの量に関わらず
1箇所毎8秒程 ※差分ビルド・フルビルド関係なく
掛かっていて、何も修正していなくてもビルドする度に時間が掛かっていたのをリソースを1つのモジュールにまとめて、R.swiftのスクリプト実行を1回にすることでビルド速度改善しました。
26秒(3箇所) -> 9秒(1箇所) (-17秒)
【R.swift】
https://github.com/mac-cain13/R.swift
環境
- R.swiftバージョン:5.1.0
- Xcode 11.x
- iMac (Quad-Core Intel Core i7 4.2 GHz, メモリ32 GB)
実施した施策
R.swiftを使用するリソースを1つの共通モジュールに集めそこでR.swiftを使用する
他のモジュールでも使用する場合は こちら のように --accessLevel public
をスクリプトに付けることで public
でアクセスできます。