Sistem build adalah salah satu bagian terpenting dari organisasi engineering
karena setiap developer berinteraksi dengannya berpotensi puluhan atau ratusan kali
per hari. Diperlukan sistem build berfitur lengkap untuk memungkinkan developer
produktivitas sesuai skala organisasi. Untuk pengembang individu,
mudah untuk mengompilasi kode Anda sehingga sistem build akan tampak
berlebihan. Tetapi pada skala yang lebih besar, memiliki
sistem build membantu mengelola
dependensi bersama, seperti mengandalkan bagian lain dari code base, atau
resource eksternal, seperti library. Bangun sistem membantu
memastikan bahwa Anda
memiliki semua yang Anda butuhkan untuk membangun kode sebelum mulai dibangun. Membuat
sistem juga meningkatkan kecepatan saat mereka
diatur untuk membantu para insinyur berbagi
resource dan hasil.
Bagian ini membahas beberapa sejarah dan dasar-dasar
membangun dan membangun sistem,
termasuk keputusan desain
yang digunakan dalam pembuatan Bazel. Jika Anda
familier dengan sistem build berbasis artefak, seperti Bazel, Buck, dan Pants, Anda
dapat melewatkan bagian ini, tetapi ini adalah ikhtisar
yang membantu untuk memahami alasannya
sistem build berbasis artefak sangat baik dalam memungkinkan skala.
Jika Anda belum pernah menggunakan sistem build sebelumnya, mulailah dari sini. Halaman ini membahas alasan
Anda harus menggunakan sistem build, dan mengapa compiler dan skrip build tidak
pilihan terbaik setelah organisasi Anda mulai berkembang pesat
developer.
Halaman ini membahas build terdistribusi, atau build yang dieksekusi di luar
komputer lokal Anda. Hal ini membutuhkan infrastruktur
yang lebih kuat untuk berbagi
sumber daya dan hasil build (dan di situlah keahlian sebenarnya terjadi!)