เมื่อโลกเปลี่ยนแปลงไปอย่างรวดเร็ว และระบบมีความซับซ้อนมากขึ้นเรื่อย ๆ จึงเป็นที่หลีกเลี่ยงได้ยากที่ทีมพัฒนา Software จะทำงานภายใต้ Code ที่เป็น Monolith เพราะการเปลี่ยนแปลงใด ๆ อาจจะกระทบกับทีมอื่นได้ การทำ Microservice จึงได้เกิดขึ้นมาเพื่อให้แต่ละทีมสามารถพัฒนาได้โดยไม่จำเป็นต้องรอทีมอื่น หากจุกที่เชื่อมกันระหว่างทีมยังคงใช้มาตรฐานเดียวกันอยู่ ทว่าการแยก Code ออกมาก็มิได้ทำให้ปัญหาทุกอย่างหายไป เมื่อ code ถูกแยกออกจากกันแล้วความซับซ้อนก็จะถูกย้ายมาสู่การทำให้มั่นใจว่า แต่ละชิ้นส่วนยังทำงานร่วมกันได้อย่างไร้รอยต่อ Microfrontend ก็พยายามทำสิ่งเดียวกันกับ Microservice ดังนั้น Microfrontend ก็ยังคงเผชิญกับความท้าทายเดียวกันว่า จะทำอย่างไรถึงจะทำให้ หน้าตา Website แต่ละหน้ายังคงใช้ Design Language เดียวกันอยู่ แม้ตัว code จะอยู่กันคนละที่ จะทำอย่างไรทีมถึงจะสามารถเห็นการทำงานของ Frontend component ได้ภายใต้ Context ของตัวเอง และสามารถแก้ไข เพิ่มเติมให้กับทีมอื่นสามารถใช้งานร่วมกันได้ นี่คือปัญหาที่เทคโนโลยี Bit จาก Bit.dev พยายามที่จะแก้ไข
As we progress through the rapidly changing business world with increasingly complex interactions, the need to divide and conquer becomes inevitable. Microservices has shown that organizing teams and code by function vertically allows teams to progress without having to be stuck in limbo waiting for each other. As long as the teams respect the same API standard then, they are free to release at their own pace. However, splitting a complex problem doesn’t magically make everything easier for free. The cost rather shifts into maintaining the coherence of each system interacting with each other. Micro-frontend movement aims to do the same thing for modern applications but also suffer the same pitfalls. How can distributed teams maintain the same design language, make UI components reusable across repositories and enable distributed teams to contribute to the centralized collection while still inside their own context? Bit from bit.dev is an open source platform that aims to tackle this problem by managing the lifecycle of each component individually.
*Remarks: This is a Thai speaking webinar.