建構基本概念

回報問題 查看原始碼 Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

建構系統是工程機構最重要的部分之一 因為每個開發人員都能與遊戲平台互動 每天。為了讓開發人員在機構擴大規模時提高工作效率,必須採用功能齊全的建構系統。對個別開發人員來說 就能輕鬆編譯程式碼,因此建構系統似乎 過多訊息。但在更大規模的情況下,建構系統有助於管理共用依附元件,例如依附元件是依賴程式碼庫的其他部分,或是外部資源 (例如程式庫)。建構系統有助於確保 具備建構程式碼所需的一切資源,即可開始建構。當建構系統設定為協助工程師分享資源和結果時,也會提升速度。

本節將介紹建構和建構系統的歷史和基本概念,包括 Bazel 的設計決策。如果您是 熟悉 Bazel、Buck 和 Pants 等以構件為基礎的建構系統 可以略過這個部分,但我們會提供實用的總覽資訊 以構件為基礎的建構系統能有效調度資源。

  • 為什麼要使用建構系統?

    如果您之前未使用過建構系統,請從這裡開始。本頁說明為何應使用建構系統,以及為何在貴機構開始擴展至超過少數開發人員時,編譯器和建構指令碼並非最佳選擇。

  • 以任務為基礎的建構系統

    本頁說明以任務為基礎的建構系統 (例如 Make、Maven 和 Gradle) 及其部分面臨的挑戰。

  • 以構件為基礎的建構系統

    本頁面會討論如何以構件為基礎的建構系統來回應問題 工作型建構系統的點子

  • 分散式版本

    本頁說明在外部平台執行的分散式版本,或 本機電腦這需要更強大的基礎架構來共用資源和建構結果 (這就是真正的魔法所在)

  • 依附元件管理

    本頁面將說明一些大型依附元件的複雜性,以及因應這些複雜性的策略。