ตัวอย่างสำหรับสแต็กโอเพ่นซอร์สของ Google และการปรับใช้กับคลาวด์
เทคโนโลยีหลักในสแต็กคือ:
ลองใช้บทช่วยสอน Google Cloud Shell เหล่านี้:
เครื่องมือจัดรูปแบบโค้ดหลายภาษาที่สร้างด้วย Bazel:
API การเปลี่ยนชื่อฟิลด์และ enum ความเข้ากันได้แบบย้อนหลัง 1: ข้อมูลเก่ายังสามารถอ่านได้ในรุ่นใหม่แม้ว่าจะเปลี่ยนชื่อแล้วก็ตาม:
การเปลี่ยนชื่อฟิลด์และ enum API ความเข้ากันได้แบบย้อนหลัง 2: รุ่นเก่าสามารถพูดคุยกับรุ่นใหม่ได้โดยไม่ทำลาย:
จะแจ้งภายหลัง
Protos, gRPC และ Bazel เป็นคนพูดได้หลายภาษา ตัวอย่างใน repo นี้ส่วนใหญ่เป็น Java และ Typescript แต่มีการรองรับภาษาอื่นๆ อีกหลายภาษา:
มีเครื่องมือที่มีประโยชน์มากมายในส่วนเครื่องมือ
คุณสามารถปฏิบัติต่อ StartupOS เสมือนเป็น "อิมเมจของนักพัฒนา" ด้วยการตั้งค่าที่สร้างไว้ล่วงหน้าและเครื่องมือที่เกี่ยวข้อง
คุณสามารถ:
ติดตั้งบาเซล แค่นั้นแหละ!
./build.sh
./test.sh
monorepo คือแนวทางการพัฒนาซอฟต์แวร์ที่โค้ดทั้งหมดถูกจัดเก็บไว้ในที่เก็บข้อมูลเดียว บางสิ่งทำได้ง่ายกว่าใน monorepo เช่น การแชร์ไฟล์โปรโตข้ามฟรอนต์เอนด์และแบ็กเอนด์ บางสิ่งทำได้ยากกว่า เช่น การควบคุมต่อ repo เหนือผู้ทำงานร่วมกัน การแจ้งเตือนทางอีเมล ประวัติการคอมมิต เป็นต้น เรากำลังดำเนินการ แนวทางที่ repos หลายรายการสามารถทำหน้าที่เป็น monorepo เดียวได้ ในขณะที่ยังคงเป็น repos แยกกัน โดยใช้เครื่องมือ multi-repo เช่น การตรวจสอบโค้ด multi-repo
เรื่องราวดีๆ เกี่ยวกับแนวทาง monorepo:
แม้ว่า Bazel จะรองรับ Linux, Mac และ Windows แต่ repo นี้รองรับ Linux และ Mac หากคุณใช้ Windows 10 คุณสามารถใช้ Windows Subsystem for Linux (WSL) ได้ มันให้สภาพแวดล้อม Linux แก่คุณโดยไม่มีค่าใช้จ่ายของเครื่องเสมือน
โปรดปฏิบัติตามคำแนะนำ หมายเหตุ: คุณอาจต้องอัปเกรด Windows หากคุณต้องการมันจะถามเมื่อเริ่มการติดตั้ง
คุณสามารถมีส่วนร่วมและเรียนรู้เทคโนโลยีเหล่านี้เพื่อทำเช่นนั้น คุณสามารถดูรายการปัญหาหรือเหตุการณ์สำคัญของโครงการได้