
Alat utama setiap programmer adalah bahasa pemrograman. Ketika proyek dimulai, kami memilih Swift. Kami memutuskan untuk mengikuti perkembangan zaman, yang lama, tetapi Objective-C yang sangat dicintai tidak bekerja. Namun, Swift memiliki masalah kecil, dan menjadi nyata ketika proyek mulai tumbuh - ini adalah masalah waktu pembangunan proyek. Untuk memahami masalah dan ukuran proyek, mari kita coba membandingkan waktu pembuatan rata-rata per minggu untuk semua proyek studio.

Seperti yang dapat Anda lihat dari grafik, waktu pembuatan rata-rata proyek ZenitOnline beberapa kali lebih besar daripada yang disajikan. Dan percayalah, proyek lain tidak begitu kecil. Yang menarik adalah proyek Objective-C, yang pada gilirannya sebanding ukurannya dengan proyek kami. Keduanya berisi 100+ layar. Lebih dari satu setengah tahun pembangunan, kami berhasil mencapai angka-angka berikut:
- โฅ 2500 file;
- โฅ 600 sumber daya;
- โฅ 160 000 .
, , 1500 xcode , , :
Unable to spawn process (Argument list too long)
SO, Swift Jira Open Radar, , . , :
- , , . - .
- . - , .
- , , . , .
SO.
, , , .
, . . , , , , . :

3rd Party Dependency โ , . CocoaPods. .
Core Frameworks โ , .
- Common โ , . , , , extensions UI .
- Services โ . , , .
- Reusable โ UI- : , , .
- Analytics โ , , , .
- Core โ , . โ , Core . .
Feature Frameworks โ , . Core . .
? :
ยซ ยป , . , . ยซ ยป, , , xcode , . , , .
, โ - . .
P.S. Xcode 11 . .
, , .