Комментарии 12
Скажите, а логику создания iframe/Realm и загрузки основного скрипта получилось выделить в универсальную фабрику виджетов?
И второй вопрос, насчет производительности, iframe это все-таки новый DOM, как сильно влияет на инициализацию страницы?
Извините, всю статью не прочитал, длинная, но труда вложено много, плюсую.
MF – У нас есть возможность разделения фронта на почти независимые виджеты, которые могут работать со своим стеком, и жить почти независимой жизнью, но на самом деле:
- Все они вертятся в одном документе, если не использовать фрейм как песочницу (что сделать нельзя, потому что это очень медленно, и более 50 фреймов на странице держать сложно), т.е. либо мы делаем зоопарк из технологий на фронте (так делать крайне не рекомендую), либо формально они являются просто компонентами, которые разрабатываются независимыми командами.
В этой связи выходит что формально MF это просто следующая ступень разработки любого большого приложения с сотнями компонентов, где есть инфраструктура, и есть много компонентов выделенных в отдельные пакеты, которые разрабатываются независимо на базе платформы.
Так что тогда такое MF?
Просто новое модное слово?
Наверное, я что-то не понимаю. Подскажите реальный профит MF over разделение ответственности между командами при разработке приложения, и в чем вообще разница?
В Яндексе когда-то давно был проект Яндекс.Виджеты: можно было из библиотеки виджетов собрать себе персонализированную главную страничку Яндекса.И это было чертовски удобно! Кому и почему пришла в голову идея избавиться от виджетов?
Ответ, как мне кажется, заключен вот в этой фразе чуть ниже по тексту:
Но это все лирика. Поговорим о том, как технически реализовать микрофронтендыТо есть, техническая реализация имеет более высокий приоритет по сравнению с требованиями пользователей.
Складывается впечатление, что Яндекс — это некий полигон, на котором «олимпиадники» имеют возможность прокачивать свои скиллы, да еще и деньги за это получать. А как такое скажется на юзерах — «это лирика».
P.S. Скоро налетят сотрудники и фанаты Яндекса и начнут активно минусовать. Причем, как обычно, без комментариев со своей стороны.
Не уловил как шарятся зависимости между виджетами? Если например 2 разных виджета используют реакт, то каждый из них загрузит свой?
Не, ну правда... Хватит нам, бэкендщикам, одним страдать от того бардака, неоптимальности и безответственности, которые микросервисная архитектура принесла в нашу жизнь. Пусть фронтендщики тоже походят по этим граблям.
Я вижу только один кейс когда выгодно применять MF - вы очень большая айти компания со своим штатом разработчиков, у вас есть много разных команд, каждая из которых знает лишь свой стек, у вас много разных проектов и вам необходимо задействовать все команды на всех проектах. Если я не прав, поправьте
Микрофронтенды и виджеты в 2021-м. Доклад Яндекса