🔥

Тред (Диана Суворова)


I don’t understand micro-frontends.
Про микрофронтэнды - народ настроен скептически и вы в хорошей компании даже Dan 🐐🐐🐐 не уверен в этой идеи twitter.com/dan_abramov/st…

И все статьи которые можно посмотреть в интернете на тему идут примерно так- в бэкэнде делают микросервисы - а мы что хуже? Мы сейчас тоже сделаем.

И дальше идет что-то про iframe в iframe (я у кого-то украла этот ответ тут 😁😁😁😁) или как компилировать React и Angular в одной странице🤦‍♀️

Вопрос зачем это делать - я про Angular и React вместе - реально кому-то надо? Серьезно интересно

Кстати если вы будете писать статью про микрофронтэнды вам абсолютно обязательно вставить скриншот твита Дэна без этого не зачет ...

Дальше про микро-сервисы и ооочень большие команды. Раньше как-то люди писали Бэкэнды в монолите и пытались разбивать свой код на идеальные хорошо продуманные модули с очень правильными API на все случаи жизни... И потом поняли что двигаться так очень тяжело

То есть идея что можно просто посидеть и разбить большой код на маленькие но продуманные части в нее очень хочется верить, но она не скейлится на Бэкэнде и на фронтэнде. Поэтому и там и там решили разбивать на изолированные но с возможностью связать друг с другом компоненты

Главный вопрос -а как разбивать? На Бэкэнде самый популярный подход оказался разбивать на предметные области - есть команда которая отвечает за сервис Пользователи есть за Сервис Продукты итд - тогда и автономия сохраняется и расти можно- писать код не боясь сломать всю систему

Другая проблема которой нет на Фронтэнде которую решали на Бэкэнде - это необходимость совмещать разные языки и фрэймворки - у нас монополия Javascript и React - все счастливы

Даже если только React - для больших продуктов возможность разбить UI на микро-приложения она очень даже необходима (IMHO). Самое близкое слово которое описывает такие системы (которое я нашла) - UI portal