Hệ thống xây dựng là một trong những thành phần quan trọng nhất của tổ chức kỹ thuật vì mỗi nhà phát triển có thể tương tác với hàng chục hoặc hàng trăm lần mỗi ngày. Cần có một hệ thống xây dựng có đầy đủ tính năng để cho phép nhà phát triển năng suất lao động khi một tổ chức mở rộng quy mô. Đối với các nhà phát triển cá nhân, đơn giản là chỉ biên dịch mã của bạn và vì vậy, một hệ thống xây dựng dường như quá mức. Tuy nhiên, ở quy mô lớn hơn, việc có một hệ thống xây dựng sẽ giúp quản lý các phần phụ thuộc dùng chung, chẳng hạn như dựa vào một phần khác của cơ sở mã hoặc một tài nguyên bên ngoài, chẳng hạn như thư viện. Các hệ thống xây dựng giúp đảm bảo rằng bạn có mọi thứ bạn cần để tạo mã trước khi bắt đầu tạo bản dựng. Xây dựng cũng giúp tăng tốc độ khi chúng được thiết lập để giúp các kỹ sư chia sẻ tài nguyên và kết quả.
Phần này trình bày một số thông tin cơ bản và lịch sử về việc xây dựng và hệ thống xây dựng, bao gồm cả các quyết định thiết kế đã được đưa vào việc tạo Bazel. Nếu quen thuộc với các hệ thống xây dựng dựa trên cấu phần phần mềm, chẳng hạn như Bazel, Buck và Pants, bạn có thể bỏ qua phần này. Tuy nhiên, đây là thông tin tổng quan hữu ích để hiểu lý do các hệ thống xây dựng dựa trên cấu phần phần mềm rất phù hợp để hỗ trợ quy mô.
Tại sao cần có Hệ thống xây dựng?
Nếu bạn chưa từng sử dụng hệ thống xây dựng, hãy bắt đầu từ đây. Trang này giải thích lý do bạn nên dùng hệ thống xây dựng, tại sao trình biên dịch và tập lệnh bản dựng lại không lựa chọn tốt nhất khi tổ chức của bạn bắt đầu mở rộng quy mô ra ngoài một vài nhà phát triển.
Hệ thống xây dựng dựa trên tác vụ
Trang này thảo luận về các hệ thống xây dựng dựa trên tác vụ (chẳng hạn như Make, Maven và Gradle) cũng như một số thách thức của các hệ thống này.
Hệ thống xây dựng dựa trên cấu phần phần mềm
Trang này thảo luận về các hệ thống xây dựng dựa trên cấu phần phần mềm để giải quyết các vấn đề của hệ thống xây dựng dựa trên tác vụ.
-
Trang này trình bày về các bản dựng được phân phối hoặc các bản dựng được thực thi bên ngoài máy cục bộ của bạn. Việc này đòi hỏi cơ sở hạ tầng mạnh mẽ hơn để chia sẻ và kết quả của bản dựng (và đây cũng là nơi phép thuật thực sự diễn ra!)
-
Trang này đề cập đến một số chức năng của các phần phụ thuộc ở quy mô lớn và để chống lại những phức tạp đó.