معماری Micro Frontendsیک الگوی معماری(architecture pattern) میباشد.
جاییکه یکfront-end app به چند app کوچکتر تقسیم میشود و هر کدام از آنها بهصورت مستقل توسعه داده و تست میشوند. مفهومی شبیه به میکرو سرویسها است اما برای سورس کدهای یکپارچه سمت کلاینت زیرا بسیار دشوار است که بخواهیم روی سورس کدهای یکپارچه سمت کلاینت تست نویسی، بروزرسانی و همچنین نگهداری کنیم و این در حالی است که توانایی تیم را بهمنظور مستقل کارکردن بر روی بخشهای مختلفی از app محدود میکند، شکستن یکapp یکپارچه بهmicro frontend های کوچکتر و قابل مدیریت، این امکان را فراهم میسازد که چندین تیم بهصورت مستقل کار کنند و از فریم ورکهای ترجیحی خود استفاده کنند.
در وبسایت رسمی مارتین فاولر رویکردMicro frontend بهصورت زیر تعریفشده است: سبک معماری که در آن برنامههای کاربردی مستقل در یک کل بزرگ مونتاژ میشوند . این رویکرد معماری برای توسعه وب ظاهری به دلیل مشکلات شناختهشده ای که با رویکرد سنتی یکپارچه به وجود میآید، بهطور فزایندهای محبوب میشود. این عمدتاً به این دلیل است که نرمافزارFrontend بهسرعت رشد میکند و وقتی از معماری یکپارچه استفاده میشود نگهداری همهچیز بسیار دشوارتر میشود.ازسوی دیگر با رویکردMicro frontend میتوانید کل برنامه را به بخشهای کوچک و مستقل تقسیم کنید، سپس هر یک از آنها توسط تیمهایFrontend مختلف و حتی با فناوریهای مختلف اجرا میشود. این همان مقیاس پذیری ، انعطافپذیری و سازگاری با معماری میکرو سرویس پس زمینه را فراهم میکند.
مزایای Micro frontend :
1- سرعت بالا در تولید ویژگیها
2- بروزرسانی سادهتر خروجی
3- تمرکز بیشتر روی مشتری
معایب Micro frontend :
1- سرمایهگذاریهای اولیه گرانقیمت
2- پیچیدگی توسعه و استقرار
3- مشکلات حفظ انسجام در تجربه کاربر
منابع :