Павел Черторогов
Компания: ps.kz
У вас тяжелый фронтенд и много разработчиков работает над ним? Сборка новой версии, время деплоя, прогона интеграционных тестов занимает много часов? Частенько возникают вопросы о том, по чьей вине что-то упало в рантайме?
В мире бэкенда давно уже воспользовались принципом «разделяй и властвуй», и распилили свои монолиты на микросервисы (SOA). Провели разделение ответственности, определили владельцев кода, инкапсулировали знания предметной области, сократили время обучения новых сотрудников, ускорили время тестирования и настроили независимые деплои.
Последние 5 лет в мире SPA об этом деле не раз задумывались большие компании. В интернете можно найти сотни статей и видео про реализацию микрофронтендов. Но достойного стандарта в индустрии так и не сформировалось. Кто-то пилит «дорогие» in-house решения, кто-то мучается с дублирующимися библиотеками и модальными окнами в zoid, кто-то костылит подгрузку ассетов в single-spa (CSS, fonts, images).
Но Павел нашел рыбу своей мечты — это module federation в Webpack 5. Оно позволяет заимпортировать любой внешний модуль/компонент с внешнего сервера, где задеплоено другое приложение, собранное Webpack'ом 5. Всё просто, прям как во времена jQuery — подтянули плагин с CDN, вставили на страницу и всё заработало.
Павел расскажет и покажет, как работает module federation в Webpack 5. Расскажет про то, как Zack Jackson и Tobias Koppers проделали титаническую работу, чтобы предложить достойный стандарт для микрофронтендов.
Компания: ps.kz
Компания: Osome
Компания: EPAM