Avvio rapido
Complete guide to installing Goa and building your first service - from setup to running a working HTTP endpoint.
Goa crea servizi Go a partire da un progetto. Descrivi tipi, operazioni, errori e mapping di trasporto in un linguaggio specifico del dominio (DSL) scritto in Go. Il generatore produce il codice derivato da quelle decisioni; tu implementi il comportamento dietro le interfacce generate.
Crea il primo servizio oppure segui il flusso con un agente di coding.
L’agente parte dal contratto invece di ricostruirlo da handler, client e schemi mantenuti separatamente. Modifica il progetto, genera e usa gli errori del compilatore per aggiornare l’applicazione. Il generatore scrive il codice ripetitivo senza farlo produrre al modello. Fornisci il progetto, l’interfaccia rilevante e l’implementazione; consulta i trasporti generati quando il compito lo richiede.
Definisci metodi, payload, risultati, validazione e mapping HTTP, gRPC o JSON-RPC in design/*.go. Descrizioni ed esempi alimentano la documentazione API.
goa gen example.com/myservice/design
I trasporti scelti determinano l’output: tipi e interfacce Go, server, client, validazione, OpenAPI e, quando applicabile, definizioni Protocol Buffer. Non modificare gen/: viene sostituito. goa example crea lo scaffolding iniziale senza sovrascrivere i file esistenti.
Scrivi logica, autorizzazione, persistenza e test. Dopo una modifica alla firma di un metodo, rigenera e compila per individuare chiamanti e implementazioni incompatibili.
Tu e l’agente mantenete progetto, decisioni di dominio, logica, autorizzazione, avvio e test. Goa genera tipi, interfacce, routing, codec, validazione, client e specifiche API. La validazione generata controlla i vincoli dichiarati: correttezza del business, sicurezza e compatibilità con client già distribuiti richiedono progettazione e test.
Goa-AI usa lo stesso modello per tool tipizzati, risposte strutturate e agenti. Un tool può riusare tipi e metodi di servizio, mantenendo collegati i contratti.
Inizia dal quickstart, poi usa le guide di trasporto per i compiti pratici e il riferimento DSL per modificare i progetti.