Section 15/181 menit

15. Kapan Harus Digunakan

15. Kapan Harus Digunakan

  • Build Tool Plugin: Saat project memiliki schema/template yang harus di-generate menjadi Swift code sebelum kompilasi (protobuf, GraphQL, OpenAPI, localizable strings dari spreadsheet). Automasi menghilangkan risiko human error pada file generated.

  • Command Plugin: Saat ada operasi developer yang perlu distandarisasi di seluruh tim — formatting, linting, documentation generation, release preparation. Lebih reproducible dari shell script ad-hoc.

  • Binary Target: Saat mendistribusikan library proprietary (IP tidak boleh terlihat), atau library yang compile-timenya sangat lambat dan sudah stable (tidak sering berubah).

  • Monorepo dengan Local Package: Tim besar yang mengerjakan beberapa app berbeda yang berbagi core logic. Local packages memberikan separation yang jelas tanpa friction overhead publikasi ke remote registry.

  • Swift Package Registry: Saat organisasi memiliki banyak internal packages dan ingin governance yang lebih ketat (siapa yang bisa publish, version lifecycle, deprecation policy). Self-hosted registry memberikan kontrol penuh.

  • Package.resolved di VCS: Selalu — ini memastikan reproducible builds di semua mesin developer dan CI.