Contratti API - AWS Guida prescrittiva

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Contratti API

Ogni micro-frontend è un sistema in grado di incapsulare opinioni, logica e complessità. Le preoccupazioni trasversali di solito includono quanto segue:

  • Sistemi di progettazione ‒ Strumenti per lo sviluppo UIs distribuiti come librerie

  • Composizione ‒ Il modo in cui un micro-frontend deve interagire con la shell di un'applicazione per renderizzarlo ed ereditarne il contesto

  • Gestione logica ‒ Interazione con APIs per gestire lo stato persistente

  • Interattività con altri micro-frontend ‒ Scenari come la pubblicazione e la fruizione di eventi o la navigazione da un micro-frontend all'altro

Per accelerare il consumo e la risoluzione dei problemi, è normale investire nella standardizzazione del modo in cui queste interfacce vengono dichiarate e documentate, comprese le dipendenze dei microfrontend. I wiki curati da esseri umani sono un buon inizio. Un approccio più scalabile consiste nell'archiviare queste informazioni come metadati strutturati nel codice. È quindi possibile centralizzarle per il consumo utilizzando l'automazione per tenere traccia delle modifiche cronologiche e fornire una ricerca completa.

Quando i micro-frontend coinvolgono un gran numero di team, è necessaria una strategia di coordinamento tra i team. La condivisione dei contratti API in modo unificato diventa un must perché riduce il sovraccarico di comunicazione e migliora l'esperienza degli sviluppatori.

OpenAPI è un linguaggio di specifica per HTTP APIs che supporta la definizione di interfacce e contratti API in modo unificato. Puoi implementare REST APIs utilizzando OpenAPI in Amazon API Gateway. Puoi anche utilizzare un'ampia varietà di framework open source che puoi ospitare in contenitori o macchine virtuali. Un vantaggio significativo è che OpenAPI può generare automaticamente la documentazione in un formato coerente, in modo che più team possano condividere le conoscenze con un investimento iniziale minimo.

Quando più team lavorano su micro-frontend, spesso formano gruppi. In questi gruppi, le persone possono incontrarsi e imparare gli uni dagli altri mentre pensano e contribuiscono al quadro generale. Queste iniziative in genere definiscono e documentano i limiti di proprietà, discutono questioni trasversali e identificano tempestivamente qualsiasi duplicazione degli sforzi per risolvere problemi comuni.