2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Un framework micro-front-end est une solution technique conçue pour diviser les grandes applications frontales en plusieurs petites applications micro-front-end indépendantes et maintenables. Chaque application micro-front-end peut être développée, testée, déployée et exécutée. de manière indépendante tout en maintenant la collaboration globale et l’expérience utilisateur.Cette architecture est similaire à l'architecture des microservices, mais se concentre sur la zone front-end
Des points communs:Lorsque l'itinéraire est changé, vous pouvez charger le code de l'application correspondante et la laisser s'exécuter dans le conteneur.
caractéristique | Qiankun | Sans bornes | spa simple | cadre |
---|---|---|---|---|
Prise en charge de la pile technologique | Indépendant de la pile technologique, prend en charge React, Vue, Angular, etc. | Basé sur WebComponent, prend en charge plusieurs piles technologiques | Indépendant de la pile technologique, prend en charge plusieurs frameworks front-end | La pile technologique n'a rien à voir, mais l'intégration doit tenir compte de la compatibilité |
Méthode d'accès | Simple, accès via l'API JS | Relativement simple, encapsulé via WebComponent | Complexe, vous devez configurer le cycle de vie d'un spa unique | Simple, intégré via des balises HTML |
isolement du bac à sable | Fournit un bac à sable JS et une isolation de style | Utilisez WebComponent pour une isolation naturelle | Les développeurs doivent implémenter eux-mêmes l’isolation du bac à sable | isolement naturel iframe |
Gestion des itinéraires | Prend en charge la maintenance de l'état du routage et le mappage de routage configurable | Prend en charge le routage virtuel et maintient l'état du routage | En tant qu'itinéraire de niveau supérieur, vous devez gérer vous-même les itinéraires de sous-application. | Le routage est géré par l'application au sein de l'iframe elle-même |
Communication des candidatures | Fournir un mécanisme de communication entre les applications parent-enfant et les applications enfant-enfant | Fournir une API basée sur des composants pour prendre en charge la communication | Les développeurs doivent mettre en œuvre eux-mêmes le mécanisme de communication | Peut communiquer via des paramètres postMessage ou URL, etc. |
Préchargement des ressources | Prise en charge du préchargement des ressources statiques | Prise en charge du préchargement des ressources statiques | Prise en charge du chargement paresseux des applications | Ne prend pas en charge le préchargement, le chargement à la demande |
Impact sur les performances | Plus bas, optimisé grâce au sandboxing et au chargement paresseux | Inférieur, mais WebComponent peut avoir une surcharge de performances | Inférieur, mais dépendant de l'optimisation des applications | Plus élevé, la surcharge de chargement et de rendu de l'iframe est plus importante |
Expérience de développement | Mieux, fournit une API et une documentation riches | Une meilleure API basée sur des composants est plus intuitive | En général, vous devez gérer vous-même de nombreux détails | Meilleur, facile à intégrer dans les applications existantes |
disponibilité de production | Éprouvé et adapté aux environnements de production | Convient aux environnements de production, mais peut bénéficier de moins de support communautaire | Convient à l'environnement de production et doit être amélioré par les développeurs eux-mêmes | Convient aux environnements de production, mais les problèmes de sécurité et de performances doivent être traités avec soin |
Coût d'adaptation | Supérieur, nécessité d’adapter le routage, le cycle de vie, etc. | Modéré, principalement adapté à WebComponent | Supérieur, nécessite une compréhension approfondie de l’architecture d’un spa unique | Inférieur, mais il faut faire attention aux problèmes de compatibilité et de performances |
Le framework micro front-end apporte de nombreux avantages au développement d'applications front-end, tels que l'indépendance de la pile technologique, le développement et le déploiement indépendants, les mises à niveau incrémentielles, etc. Cependant, il présente également certaines lacunes, telles qu’une grande difficulté d’accès et de faibles capacités de partage des ressources. Par conséquent, lorsque vous choisissez d'utiliser ou non un framework micro-front-end, vous devez le considérer de manière globale en fonction des besoins spécifiques du projet et des capacités techniques de l'équipe. Dans le même temps, dans les applications pratiques, nous devons également prêter attention à des questions telles que la sélection du framework micro-frontal, la conception de l'architecture, la gestion du code, etc., afin d'assurer le bon déroulement du projet et le fonctionnement stable du système.