Микрофронтенды — это архитектурный подход к разработке интерфейса, который становится все более популярным. Это может легко представить будущее
Моя команда и я используем этот подход уже два года, и пришло время поделиться всем, что мы узнали, а также наиболее важными причинами, почему вам стоит задуматься об использовании этого подхода в ваших следующих проектах.
Давайте сначала изучим, что такое архитектура микроинтерфейса, а затем рассмотрим пять причин, по которым стоит ее принять сейчас.
Что такое архитектура микрофронтенда?
За последние несколько лет
Это то, чем является микросервисная архитектура в отношении серверной разработки. Но тот же подход можно применить и к разработке интерфейса, и он называется архитектурой микроинтерфейса. На официальном сайте Мартина Фаулера подход микрофронтенда определяется как:
архитектурный стиль, в котором независимые интерфейсные приложения объединяются в единое целое.
Этот архитектурный подход к
С другой стороны, микрофронтенды дают вам возможность создать менее сложную и громоздкую архитектуру. В частности, благодаря подходу микроинтерфейса вы можете разделить все приложение на небольшие независимые части. Каждая из них затем будет реализована разными
Таким образом, вас не должно удивлять, что
Архитектура микроинтерфейса
5 преимуществ выбора
Разработка с помощью микрофронтенда научила меня, в чем настоящие сильные стороны этого подхода к разработке фронтенда.
Теперь давайте рассмотрим пять наиболее важных причин для его использования, основанных на моем опыте
Чтобы создать сбалансированную картину, за этой статьей последует еще одна статья о пяти наиболее важных ловушках, связанных с микроинтерфейсами.
Масштабирование до нескольких команд
Команда, с которой я работаю, состоит из разработчиков с разным опытом и навыками. Некоторые являются экспертами в React, другие в Vue.js или Angular. Одни предпочитают кодировать на JavaScript, другие на TypeScript. Первоначально это представляло собой препятствие. Единственным решением было найти точки соприкосновения, хотя такой выбор вынудил бы некоторых разработчиков изучать новые технологии и терять свой опыт. Итак, мы искали решение и решили принять архитектурный подход микроинтерфейса.
Благодаря этому мы смогли разделить первоначальную команду на несколько команд, где каждый может проявить себя наилучшим образом. Это связано с тем, что разные команды могут принять наилучшее возможное решение с точки зрения архитектуры, тестирования и стиля кодирования на основе
Микрофронтенды также полезны с точки зрения конечного результата. Это то, что наша команда узнала после того, как полностью приняла этот подход. Фактически, наличие нескольких небольших команд, которые могут свободно использовать предпочитаемые ими технологии, означает, что они по своей природе менее ограничены и, следовательно, более мотивированы на написание более качественного кода.
Принятие другого стека технологий
Поскольку микрофронтенды состоят из небольших независимых частей, каждая из них может быть реализована с использованием разных технологических стеков. Это невероятно большая сила.
Более того, микроинтерфейсный подход практически устраняет явление привязки к конкретной технологии или, по крайней мере, значительно снижает его. Это связано с тем, что ваша команда всегда может принять решение о выборе нового стека технологий без необходимости переводить то, что было разработано ранее. Кроме того, каждый фрагмент архитектуры микрофронтенда, безусловно, меньше, чем монолит внешнего интерфейса, и его преобразование в новую технологию займет меньше времени.
Кроме того, поскольку наша команда приняла подход микроинтерфейса, у нас появился стимул экспериментировать с новыми технологиями, библиотеками и фреймворками. На самом деле, всякий раз, когда вам нужно внедрить новый раздел в свое приложение, вы можете принять решение о внедрении совершенно нового стека технологий. Это бесценная возможность узнать, как использовать множество
Разработка и развертывание становятся быстрее
Еще один важный аспект, на который следует обратить внимание, заключается в том, что благодаря внедрению микрофронтендов наш командный процесс разработки фронтенда значительно улучшился. Основная причина в том, что вместо большой команды, вынужденной иметь дело с неизбежными накладными расходами на коммуникацию, мы теперь являемся частью небольших независимых команд, работающих над разными функциями одновременно, независимо от деталей реализации.
Как вы можете себе представить, это также представляет собой огромный шаг вперед, когда дело доходит до выпуска новых функций. Причина в том, что наш процесс разработки значительно улучшился, и основная причина в том, что создание небольших микроинтерфейсов быстрее и проще по сравнению с большим монолитным программным обеспечением. Следовательно, также значительно улучшится время развертывания. На самом деле, когда команда заканчивает работу над функцией, она может развернуть ее онлайн, не дожидаясь.
Другими словами, микроинтерфейсные приложения основаны на независимых командах, одновременно работающих над независимыми функциями. Это не может не давать возможность добиться более высоких темпов выпуска, особенно по мере увеличения числа небольших команд.
Это делает ваше
Если вы
Это то, чему наша команда быстро научилась. Тестирование больших монолитных приложений является сложной задачей и требует много времени, и мы все это знали. Но с тех пор, как мы приняли подход микроинтерфейса, все изменилось. Каждая команда теперь несет ответственность за тестирование разрабатываемых ею функций, которые намного меньше, чем полноценное внешнее приложение. Это ускоряет весь процесс и упрощает его. Следовательно, никто теперь не боится тестирования. Кроме того, каждая отдельная команда теперь может свободно использовать инструменты и технологии тестирования, которые они предпочитают.
Более того, работа с небольшими фрагментами означает, что понимание потока происходящего становится более доступным. Это приводит к созданию
Он представляет будущее
Согласно отчету о состоянии микросервисов за 2020 год, 24% разработчиков использовали микрофронтенды. Это означает, что все больше и больше компаний используют возможности этого подхода, и ожидается, что несколько популярных интерфейсных приложений примут его в ближайшем будущем. Другими словами, микрофронтенды могут представлять собой следующий шаг в развитии фронтенда.
У моей команды была возможность справиться с этим, и я не сомневаюсь, что это представляет собой естественную эволюцию монолитного подхода к
В то же время
Заключение
В этой статье мы рассмотрели пять наиболее важных причин для принятия подхода к архитектуре микроинтерфейса, основанного на опыте, который моя команда и я наработали ежедневно, работая с ним в течение двух лет.
Несмотря на то, что она менее популярна, чем микросервисная архитектура, используемая в
Если вы хотите узнать больше о том, как начать работу с фреймворком микроинтерфейса, обратитесь к нашему руководству для начинающих по архитектуре микроинтерфейса, где вы создадите работающее приложение.