Arquitetura software
Ecossistema Go (Golang)
Visão consolidada do ecossistema Go: frameworks, bibliotecas, ferramentas e uso em produção. Baseado em go.dev e projetos open source.
Linguagem e runtime
- Open source — Linguagem criada na Google
- Compilação estática — Binário único, sem runtime externo
- Concorrência nativa — Goroutines e channels
- Standard library —
net/http,database/sql,encoding/json,context, etc. - Tooling —
go build,go test,go mod,gofmt,go vet
Frameworks web
| Framework | Uso | Características |
|---|---|---|
| Gin | APIs, performance | Mais popular, radix tree (httprouter), middleware, validação. gin-gonic.com |
| Echo | APIs enterprise | Alto desempenho, recursos enterprise. echo.labstack.com |
| Chi | APIs minimalistas | Roteador leve, composição de middlewares. go-chi.io |
| Fiber | Performance extrema | Inspirado em Express, built sobre fasthttp. gofiber.io |
| Beego | MVC full-stack | ORM, sessões, cache, logs. beego.me |
Bibliotecas e ferramentas
| Categoria | Pacotes |
|---|---|
| CLI | Cobra, Viper, urfave/cli |
| Config | Viper (env, YAML, JSON) |
| gRPC | grpc-go |
| Microserviços | go-kit (endpoints, circuit breakers, logging) |
| Testes | testify, padrão testing |
| Cloud SDKs | AWS SDK, GCP, Azure |
| ORM/Database | GORM, sqlx, ent |
Casos de uso e empresas
Go é usado por Google, PayPal, Uber, Dropbox, Cloudflare, Twitch, Mercado Livre e outras. Adequado para:
- Cloud e serviços de rede
- CLIs e ferramentas DevOps
- Microserviços e APIs
- Ferramentas de infraestrutura (Docker, Kubernetes, Terraform)
Case studies em go.dev/solutions
Recursos
- go.dev — Site oficial, documentação, tutoriais
- pkg.go.dev — Documentação de pacotes
- Awesome Go — Lista curada de projetos