Fermer

avril 9, 2022

5 raisons pour lesquelles vous devriez adopter une architecture micro-frontend


Les micro-interfaces sont une approche architecturale du développement frontal qui est devenue de plus en plus populaire. Cela pourrait facilement représenter l'avenir du développement Web frontal, et c'est pourquoi il est essentiel de connaître les principaux avantages qu'une telle architecture peut apporter à vos applications et à votre équipe de développement.

Mon équipe et moi utilisons cette approche depuis deux ans, et il est temps de partager tout ce que nous avons appris, ainsi que les raisons les plus importantes pour lesquelles vous devriez commencer à penser à l'utiliser dans vos prochains projets.

Étudions d'abord ce qu'est l'architecture micro frontale, puis plongeons dans les cinq raisons de l'adopter maintenant.

Qu'est-ce qu'une architecture micro-frontend ?

Au cours des dernières années, les sociétés informatiques ont commencé à diviser les gros logiciels en morceaux plus petits et plus faciles à gérer. L'idée derrière cette approche est d'avoir de nombreux services qui peuvent être développés, testés et déployés indépendamment.

C'est ce que learchitecture de microservices concerne le développement backend. Mais la même approche peut également être appliquée au développement frontal, et elle s'appelle l'architecture micro frontale. SurSite officiel de Martin Fowlerl'approche micro frontale est définie comme :

un style architectural où les applications frontales livrables indépendamment sont composées dans un ensemble plus vaste.

Cette approche architecturale du développement Web frontal est devenue de plus en plus populaire en raison des pièges bien connus de l'approche monolithique traditionnelle. C'est principalement parce que les logiciels frontaux ont tendance à se développer rapidement, et lorsqu'une architecture monolithique est utilisée, tout devient beaucoup plus difficile à maintenir.

D'autre part, les micro-interfaces vous permettent de réaliser une architecture moins complexe et moins encombrante. En particulier, grâce à l'approche micro frontale, vous pouvez diviser une application entière en petites parties indépendantes. Chacun d'entre eux sera alors implémentable par différentes équipes frontend, et même avec des technologies différentes. Cela garantit la même évolutivité, flexibilité et adaptabilité que celles fournies avec l'architecture de microservice backend. De plus, cette approche vous permet de mélanger des composants micro frontaux développés avec des bibliothèques ou des frameworks différents sur la même page Web.

Donc, cela ne devrait pas vous surprendre que les micro-interfaces soient désormais une tendance dans la communauté informatique, et c'est une approche qui est de plus en plus adoptée.

Architecture micro frontale

5 avantages de choisir les micro-frontends aujourd'hui

Développer avec le micro frontend m'a appris quels sont les vrais points forts de cette approche du développement frontend.

Voyons maintenant les cinq raisons les plus pertinentes de l'utiliser, appuyées par mon expérience en tant que développeur frontend qui a travaillé avec des micro frontends pendant plus de deux ans.

Pour créer une image équilibrée, cet article sera ensuite suivi d'un autre article sur les cinq pièges les plus importants des micro-interfaces.

Passage à plusieurs équipes

L'équipe avec laquelle je travaille est composée de développeurs aux profils et compétences différents. Certains sont experts enRéagirautreVue.jsou alorsAngulaire . Certains préfèrent coder enJavascriptd'autres dansManuscrit . Au départ, cela représentait un obstacle. La seule solution était de trouver un terrain d'entente, même si ce choix aurait obligé certains développeurs à apprendre de nouvelles technologies et à perdre leur expertise. Nous avons donc cherché une solution et décidé d'adopter l'approche architecturale micro frontend.

Grâce à cela, nous avons pu diviser l'équipe d'origine en plusieurs équipes où chacun peut s'exprimer au mieux. En effet, les différentes équipes peuvent prendre la meilleure décision possible en termes d'architecture, de test et de style de codage en fonction de la logique métier à laquelle elles doivent s'attaquer. De plus, cette approche conduit intrinsèquement à l'isolement du code et du style, rendant chaque équipe indépendante des autres.

Les micro-interfaces sont également utiles en termes de résultat final. C'est ce que notre équipe a appris après avoir pleinement adopté cette approche. En fait, avoir plusieurs petites équipes libres d'utiliser les technologies qu'elles préfèrent signifie qu'elles sont intrinsèquement moins limitées et par conséquent plus motivées pour écrire du code de meilleure qualité.

Adopter une pile technologique différente

Étant donné que les micro-interfaces sont constituées de petites pièces indépendantes, chacune d'entre elles peut être implémentée à l'aide de différentes piles technologiques. C'est une force incroyablement grande. Premièrement, parce que l'équipe de départ peut être divisée en plusieurs petites équipes basées sur l'expertise d'une pile technologique particulière, qui respecte également le principe de responsabilité unique. Deuxièmement, étant donné que de nombreuses piles technologiques seraient utilisées sur le même projet, il devient plus facile d'embaucher de nouveaux développeurs.

De plus, l'approche micro frontale élimine pratiquement le phénomène de verrouillage à une technologie particulière, ou du moins le réduit considérablement. En effet, votre équipe peut toujours décider d'opter pour une nouvelle pile technologique sans avoir à traduire ce qui a été développé précédemment. De plus, chaque morceau de l'architecture des micro-frontends est sûrement plus petit qu'un monolithe frontal, et le traduire en une nouvelle technologie prendrait moins de temps.

De plus, depuis que notre équipe a adopté l'approche micro-frontend, nous avons été incités à expérimenter de nouvelles technologies, bibliothèques et frameworks. En fait, chaque fois que vous devez greffer une nouvelle section dans votre application, vous pouvez décider d'adopter une pile technologique entièrement nouvelle. Cela représente une opportunité inestimable d'apprendre à utiliser les nombreux frameworks JavaScript du marché.

Le développement et le déploiement deviennent plus rapides

Un autre aspect important à aborder est qu'en adoptant des micro-interfaces, notre processus de développement d'interface en équipe s'est fortement amélioré. La raison principale est qu'au lieu d'avoir une grande équipe obligée de gérer des frais généraux de communication inévitables, nous faisons maintenant partie d'équipes indépendantes plus petites travaillant sur différentes fonctionnalités en même temps, quels que soient les détails de mise en œuvre.

Comme vous pouvez l'imaginer, cela représente également un énorme pas en avant lorsqu'il s'agit de publier de nouvelles fonctionnalités. La cause en est que notre processus de développement s'est beaucoup amélioré, et la raison principale est que la construction de petites micro-interfaces est plus rapide et plus facile par rapport aux grands logiciels monolithes. Par conséquent, votre temps de déploiement s'améliorera également de manière significative. En fait, chaque fois qu'une équipe termine de travailler sur une fonctionnalité, elle peut la déployer en ligne sans avoir à attendre.

En d'autres termes, les applications micro-frontend sont basées sur des équipes indépendantes travaillant simultanément sur des fonctionnalités indépendantes. Cela ne peut que représenter une opportunité d'atteindre des taux de sortie plus élevés, d'autant plus que le nombre de petites équipes augmente.

Cela rend votre application Web plus maintenable

Si vous avez déjà eu affaire à de grandes applications, vous savez qu'elles peuvent facilement devenir difficiles à maintenir, surtout lorsqu'elles sont monolithiques et qu'elles sont vouées à grossir. D'autre part, les micro-interfaces sont basées sur l'approche diviser pour mieux régner. Cela signifie qu'en choisissant cette architecture pour votre application Web, vous pouvez faciliter le test et la maintenance de chaque exigence métier.

C'est quelque chose que notre équipe a appris rapidement. Tester de grandes applications monolithiques est difficile et prend beaucoup de temps, et nous le savions tous. Mais depuis que nous avons adopté l'approche micro frontale, tout a changé. Chaque équipe est désormais chargée de tester les fonctionnalités qu'elle développe, bien plus petites qu'une application frontend complète. Cela accélère l'ensemble du processus et le rend plus facile. Par conséquent, plus personne n'a peur des tests. De plus, chaque équipe est désormais libre d'utiliser les outils et technologies de test qu'elle préfère.

De plus, traiter de petits morceaux signifie que comprendre le flux de ce qui se passe devient plus abordable. Cela conduit à des applications Web construites sur de nombreuses petites pièces qui sont plus fiables et faciles à entretenir en cas de besoin.

Il représente l'avenir du développement frontend

Selon leRapport sur l'état des microservices 2020 , 24 % des développeurs ont utilisé des micro-interfaces. Cela signifie que de plus en plus d'entreprises exploitent la puissance de cette approche, et plusieurs applications frontales populaires devraient l'adopter dans un proche avenir. En d'autres termes, les micro-interfaces peuvent représenter la prochaine étape en matière de développement d'interface.

Mon équipe a eu l'occasion de gérer cela, et je suis convaincu que cela représente l'évolution naturelle de l'approche monolithique du développement frontend. D'un autre côté, c'est encore une technologie relativement nouvelle et quelque peu immature, et il reste encore un long chemin à parcourir. C'est aussi pourquoi il y a des inconvénients qui doivent être discutés (comme certaines implémentations micro frontales conduisant à la duplication des dépendances). Nous les verrons dans le prochain article.

Dans le même temps, les applications Web évoluent, et mon équipe et moi n'avons pas peur de dire que le micro frontend est l'évolution naturelle du développement frontend.

Conclusion

Dans cet article, nous avons examiné les cinq raisons les plus importantes d'adopter l'approche architecturale micro-frontend sur la base de l'expérience que mon équipe et moi avons développée en travaillant quotidiennement avec elle pendant deux ans. L'approche micro frontale vous permet de diviser une application frontale en petits morceaux indépendants les uns des autres.

Bien qu'elle soit moins populaire que l'architecture de microservices utilisée dans le développement backend, l'idée sous-jacente est presque la même. Il n'est pas surprenant que l'architecture micro frontale soit à la mode, et elle peut représenter l'évolution naturelle du développement frontal. C'est aussi pourquoi le connaître est indispensable, et apprendre les principales raisons de l'adopter dès maintenant, c'est sur quoi portait cet article.

Si vous souhaitez en savoir plus sur la façon de démarrer avec un framework micro frontend, veuillez consulternotre guide du débutant sur l'architecture micro frontendoù vous créerez une application fonctionnelle.

Merci d'avoir lu! J'espère que vous avez trouvé cet article utile. Ne hésitez pas àtendre la main vers moipour toute question, commentaire ou suggestion.






Source link