اخیراً شاهد ظهور الگوهایی برای تجزیه frontend monolithها به تکههای کوچکتر و سادهتر هستیم که به طور مستقل توسعه، تست و مستقر شوند، ولی همچنان به عنوان یک محصول منسجم برای کاربران ظاهر شوند. این تکنیک فرانتاندهای میکرو(Micro Frontends) نام دارد و به صورت زیر تعریف میشود:
"یک سبک معماری که در آن برنامه های کاربردی مستقل قابل تحویل در یک کل بزرگتر ترکیب می شوند"
برخی از مزایای کلیدی micro frontendها عبارتند از:
توجه کنید که این مزیت ها برخی از همان مواردی است که میکروسرویس ها می توانند ارائه دهند.
وقتی صحبت از معماری نرمافزار به میان میآید، همه چیز با هزینه همراه است. برخی از پیادهسازیهای micro frontend میتوانند به تکرار وابستگیها منجر شوند و تعداد بایتهایی را که کاربران باید دانلود کنند افزای دهند. علاوه بر این، افزایش چشمگیر استقلال تیم می تواند باعث پراکندگی در نحوه کار تیم شود. با این وجود، معتقدیم که می توان این خطرات را مدیریت کرد و مزایای استفاده از micro frontendها اغلب از هزینه هایش بیشتر است.
به طور خلاصه، micro frontendها چیزهای بزرگ و ترسناک را به قطعات کوچکتر و قابل کنترلتر تقسیم میکنند و وابستگیهای بین آنها را به صراحت بیان میکنند. انتخابهای فناوری، پایگاههای کد، تیمها، و فرآیندهای انتشار، همگی باید بتوانند مستقل از یکدیگر و بدون هماهنگی بیش از حد، عمل کرده و تکامل یابند.
«این مطلب، بخشی از تمرینهای درس معماری نرمافزار در دانشگاه شهیدبهشتی است»
[1] https://micro-frontends.org/