0Pricing
Angular Academy · บทเรียน

สถาปัตยกรรมไมโครฟรอนต์เอนด์

แบ่งแอปออกเป็นส่วนที่นำไปใช้งานได้อย่างอิสระ

สถาปัตยกรรมไมโครฟรอนต์เอนด์ เป็นบทเรียน Angular Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Angular Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Angular Academy มีบทเรียนทั้งหมด 4 บทเรียน

ไมโครฟรอนต์เอนด์คืออะไร

ไมโครฟรอนต์เอนด์ นำแนวคิดไมโครเซอร์วิสมาขยายใช้กับส่วนติดต่อผู้ใช้ โดยแบ่งเว็บแอปขนาดใหญ่ออกเป็นส่วนย่อยที่พัฒนา ทดสอบ และนำไปใช้งานได้อย่างอิสระ แต่ละส่วนดูแลโดยทีมแยกกัน และนำมารวมเป็นประสบการณ์เดียวกันขณะทำงาน

ปัญหาที่ไมโครฟรอนต์เอนด์แก้ไข

แอป Angular ขนาดใหญ่เพียงแอปเดียว (หรือ "ฟรอนต์เอนด์แบบโมโนลิธ") ทำให้ทุกทีมต้องผูกกับรอบการปล่อยเวอร์ชัน กระบวนการบิลด์ และการนำไปใช้งานชุดเดียวกัน เมื่อทีมเติบโตขึ้น สิ่งนี้จะทำให้ทุกอย่างช้าลง ไมโครฟรอนต์เอนด์ช่วยให้แต่ละทีมส่งมอบงานตามกำหนดเวลาของตนเองได้

สิ่งที่นำไปใช้งานได้อย่างอิสระ

คุณสมบัติหลักคือ การนำไปใช้งานได้อย่างอิสระ ทีมชำระเงินสามารถนำขั้นตอนการชำระเงินเวอร์ชันใหม่ไปใช้งานได้โดยไม่ต้องบิลด์หรือนำแค็ตตาล็อกสินค้าไปใช้งานใหม่ แต่ละรีโมตเป็นอาร์ติแฟกต์แยกกันภายใต้กระบวนการส่งมอบของตนเอง

โฮสต์และรีโมต

ในเชิงสถาปัตยกรรมจะมี โฮสต์ (เชลล์) ที่โหลด รีโมต ตั้งแต่หนึ่งตัวขึ้นไป เชลล์รับผิดชอบการกำหนดเส้นทางระดับบนและเค้าโครง ส่วนรีโมตจัดเตรียมพื้นที่ฟีเจอร์ที่โหลดตามต้องการ

// conceptually
host  -> loads -> remote: catalog
        -> loads -> remote: checkout
        -> loads -> remote: account

กลยุทธ์การประกอบ

สามารถรวมรีโมตได้ใน เวลาบิลด์ ที่ เซิร์ฟเวอร์ (SSI/เอดจ์) หรือใน เวลาทำงาน บนเบราว์เซอร์ การประกอบในเวลาทำงานด้วย Module Federation เป็นวิธีที่ใช้กันมากที่สุดสำหรับ Angular เพราะยังคงรองรับการนำไปใช้งานอย่างอิสระ

Module Federation ในประโยคเดียว

Module Federation ช่วยให้แอปหนึ่งที่บิลด์แล้วเปิดเผยโมดูล ซึ่งแอปอีกแอปที่บิลด์แล้วสามารถโหลดผ่าน HTTP ขณะทำงานได้ พร้อมแบ่งปันไลบรารีร่วมเพื่อไม่ให้เกิดการซ้ำซ้อน นี่คือกลไกเบื้องหลังไมโครฟรอนต์เอนด์ของ Angular ส่วนใหญ่

ความเป็นอิสระของทีมและขอบเขต

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

ต้นทุนที่ต้องแลก

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

เมื่อใดที่ไม่ควรใช้

สำหรับทีมขนาดเล็กหรือผลิตภัณฑ์เดียว โมโนลิธที่จัดโครงสร้างอย่างดีและมีเส้นทางที่โหลดแบบชะลอจะเรียบง่ายและรวดเร็วกกว่า ไมโครฟรอนต์เอนด์จะคุ้มค่าเมื่อหลายทีมจำเป็นต้องนำส่วนต่าง ๆ ของแอปเดียวกันไปใช้งานอย่างอิสระ

รูปลักษณ์และความรู้สึกที่ใช้ร่วมกัน

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

ข้อควรพิจารณาเฉพาะสำหรับ Angular

รีโมตของ Angular ต้องใช้เฟรมเวิร์ก Angular เพียงชุดเดียวร่วมกันขณะทำงาน การโหลด Angular สองเวอร์ชันจะทำให้การฉีดการพึ่งพาเสียหายและทำให้บันเดิลมีขนาดใหญ่ขึ้น เครื่องมืออย่าง Native Federation จัดการการแบ่งปันนี้ให้คุณ

ตรวจสอบความเข้าใจ

ประโยชน์สำคัญของไมโครฟรอนต์เอนด์คืออะไร

สรุป

ไมโครฟรอนต์เอนด์แบ่งแอปขนาดใหญ่ออกเป็นรีโมตที่นำไปใช้งานได้อย่างอิสระและโหลดโดยเชลล์โฮสต์ โดยแต่ละรีโมตสอดคล้องกับโดเมนธุรกิจ การประกอบในเวลาทำงานผ่าน Module Federation เป็นมาตรฐานสำหรับ Angular ซึ่งต้องใช้เฟรมเวิร์กเพียงชุดเดียวร่วมกัน แนวทางนี้แก้ปัญหาการผูกกันในระดับทีม แต่ก็เพิ่มต้นทุนด้านการปฏิบัติการอย่างแท้จริง

คำถามที่พบบ่อย

บทเรียน “สถาปัตยกรรมไมโครฟรอนต์เอนด์” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “สถาปัตยกรรมไมโครฟรอนต์เอนด์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Angular Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Angular Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “สถาปัตยกรรมไมโครฟรอนต์เอนด์”

แบ่งแอปออกเป็นส่วนที่นำไปใช้งานได้อย่างอิสระ คุณปฏิบัติ Angular Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Angular Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Angular Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “สถาปัตยกรรมไมโครฟรอนต์เอนด์” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Angular Academy นี้ได้ไหม

ได้ บทเรียน Angular Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. สถาปัตยกรรมไมโครฟรอนต์เอนด์
  2. เนทีฟเฟเดอเรชันสำหรับ Angular
  3. การแชร์สิ่งที่ต้องพึ่งพา
  4. การโหลดโมดูลรีโมต
← กลับไปที่ Angular Academy