Architettura a micro frontend
Suddividere le app in unità distribuibili indipendenti
Architettura a micro frontend è una lezione Angular Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Angular Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Angular Academy include 4 lezioni in totale.
Che cosa sono i micro frontend
I micro frontend estendono il concetto dei microservizi all'interfaccia utente: una grande app web viene suddivisa in parti sviluppate, testate e distribuite in modo indipendente. Ogni parte è gestita da un team distinto e le parti vengono combinate a runtime in un'unica esperienza.
Il problema che risolvono
Una singola app Angular enorme (un "frontend monolitico") vincola ogni team a un'unica cadenza di rilascio, un'unica build e un'unica distribuzione. Con la crescita dei team, tutto questo rallenta il lavoro. I micro frontend permettono ai team di distribuire secondo i propri tempi.
Artefatti distribuibili in modo indipendente
La proprietà fondamentale è la distribuibilità indipendente: il team del checkout può distribuire un nuovo flusso di checkout senza ricostruire o ridistribuire il catalogo prodotti. Ogni remote è un artefatto separato, gestito dalla propria pipeline.
Host e remote
Dal punto di vista architetturale esiste un host (shell) che carica uno o più remote. La shell gestisce il routing di primo livello e il layout; i remote forniscono aree funzionali caricate on demand.
// conceptually
host -> loads -> remote: catalog
-> loads -> remote: checkout
-> loads -> remote: accountStrategie di composizione
I remote possono essere combinati al momento della build, sul server (SSI/edge) oppure a runtime nel browser. La composizione a runtime con Module Federation è la più comune in Angular, perché preserva la distribuzione indipendente.
Module Federation in una frase
Module Federation consente a un'app compilata di esporre moduli che un'altra app compilata carica via HTTP a runtime, condividendo le librerie comuni per evitare duplicazioni. È il motore alla base della maggior parte dei micro frontend Angular.
Autonomia dei team e confini
Ogni micro frontend dovrebbe corrispondere a un dominio aziendale ben definito, come catalogo, checkout o account. Confini di dominio chiari riducono al minimo l'accoppiamento tra team, che è lo scopo principale. Le esigenze condivise, come autenticazione e design system, diventano contratti espliciti.
I costi
I micro frontend aggiungono una complessità concreta: versioni non allineate tra i remote, dipendenze duplicate se configurati in modo errato, debugging più difficile tra i confini e problemi di caricamento a runtime. Li adotti solo quando le dimensioni dei team giustificano questo sovraccarico.
Quando NON utilizzarli
Per un team piccolo o per un singolo prodotto, un monolite ben strutturato con route caricate in modo lazy è più semplice e veloce. I micro frontend sono vantaggiosi quando più team devono distribuire in modo indipendente sulla stessa app.
Aspetto e stile condivisi
Per evitare un'interfaccia Frankenstein, i team condividono una libreria di design system e gli stili globali. La coerenza è un contratto deliberato, non una coincidenza, perché ogni remote viene compilato separatamente.
Considerazioni specifiche per Angular
I remote Angular devono condividere a runtime una sola copia del framework Angular; caricare due versioni di Angular compromette la dependency injection e aumenta le dimensioni del bundle. Strumenti come Native Federation gestiscono questa condivisione al posto Suo.
Verifica rapida
Qual è il principale vantaggio dei micro frontend?
Riepilogo
I micro frontend suddividono una grande app in remote distribuibili in modo indipendente e caricati da una shell host, associandoli a domini aziendali. La composizione a runtime tramite Module Federation è lo standard per Angular, che deve condividere una sola copia del framework. Risolvono l'accoppiamento tra team, ma aggiungono costi operativi concreti.
Domande Frequenti
La lezione «Architettura a micro frontend» è gratuita?
Sì — il testo completo di «Architettura a micro frontend» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Angular Academy, passa a CoddyKit PRO. Il corso Angular Academy include 4 lezioni in totale.
Cosa imparerò in «Architettura a micro frontend»?
Suddividere le app in unità distribuibili indipendenti Eserciti Angular Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Angular Academy?
Non è richiesta alcuna esperienza precedente. Angular Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Architettura a micro frontend»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Angular Academy?
Sì. Ogni lezione Angular Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Architettura a micro frontend
- Native Federation per Angular
- Condividere le dipendenze
- Caricare moduli remoti