ข้อมูลเบื้องต้นเกี่ยวกับบิลด์

ระบบบิลด์เป็นส่วนสําคัญที่สุดขององค์กรวิศวกรรมเพราะนักพัฒนาซอฟต์แวร์แต่ละคนจะโต้ตอบกับระบบนี้หลายสิบหรือหลายร้อยครั้งต่อวัน ระบบบิลด์ที่มีฟีเจอร์ครบถ้วนนั้นจําเป็นสําหรับการเปิดใช้ประสิทธิภาพของนักพัฒนาซอฟต์แวร์ตามการปรับขนาดขององค์กร สําหรับนักพัฒนาซอฟต์แวร์แต่ละราย เป็นการคอมไพล์โค้ดด้วยตนเอง การทํางานของระบบบิลด์อาจมากเกินไป แต่ในระดับใหญ่ การมีระบบบิลด์จะช่วยจัดการทรัพยากร Dependency ที่ใช้ร่วมกัน เช่น การใช้ฐานของโค้ดอีกส่วนหนึ่งหรือทรัพยากรภายนอก เช่น ไลบรารี ระบบบิลด์ตรวจสอบว่าคุณมีทุกอย่างที่จําเป็นต่อการสร้างโค้ดก่อนที่จะเริ่มสร้าง นอกจากนี้ ระบบบิลด์ยังเพิ่มอัตราความเร็วเมื่อมีการตั้งค่าเพื่อช่วยให้วิศวกรแชร์ทรัพยากรและผลลัพธ์ได้ด้วย

ส่วนนี้จะครอบคลุมประวัติและข้อมูลเบื้องต้นเกี่ยวกับระบบบิลด์และบิลด์ รวมถึงการตัดสินใจด้านการออกแบบที่นํามาใช้ในการสร้าง Bazel หากคุณคุ้นเคยกับระบบบิลด์ที่เป็นอาร์ติแฟกต์ เช่น Bazel, Buck และ Pants คุณก็ข้ามส่วนนี้ได้ แต่นี่เป็นภาพรวมที่มีประโยชน์ในการทําความเข้าใจว่าเหตุใดระบบบิลด์ที่ใช้อาร์ติแฟกต์จึง สําหรับการปรับขนาดในวงกว้าง

  • ทําไมต้องเป็นระบบบิลด์

    หากคุณไม่เคยใช้ระบบบิลด์มาก่อน ให้เริ่มที่นี่ หน้านี้จะพูดถึงเหตุผลที่คุณควรใช้ระบบบิลด์ และสาเหตุที่คอมไพล์และสคริปต์บิลด์ไม่ใช่ตัวเลือกที่ดีที่สุดเมื่อองค์กรของคุณเริ่มปรับขนาดตามนักพัฒนาแอป

  • ระบบบิลด์ที่อิงตามงาน

    หน้านี้จะพูดถึงระบบบิลด์ตามงาน (เช่น Make, Maven และ Gradle) และปัญหาท้าทายบางส่วน

  • ระบบบิลด์จากอาร์ติแฟกต์

    หน้านี้จะพูดคุยเรื่องระบบบิลด์ที่อิงตามอาร์ติแฟกต์เพื่อตอบสนองต่อจุดที่เป็นปัญหาของระบบบิลด์ตามงาน

  • บิลด์ที่มีการเผยแพร่

    หน้านี้จะครอบคลุมบิลด์ที่มีการเผยแพร่หรือบิลด์ที่ประมวลผลนอกเครื่องภายใน วิธีนี้ต้องใช้โครงสร้างพื้นฐานที่มีประสิทธิภาพมากขึ้นในการแชร์ทรัพยากรและสร้างผลลัพธ์ (และเป็นสถานที่ของวิซาร์ดที่แท้จริง)

  • การจัดการทรัพยากร Dependency

    หน้านี้จะครอบคลุมข้อมูลแทรก Dependency ของทรัพยากร Dependency ในปริมาณมากและกลยุทธ์เพื่อจัดการกับข้อมูลแทรกเหล่านั้น