Recursos Adicionais
Esta seção contém uma curadoria de livros, cursos, sites, ferramentas e comunidades para complementar seu aprendizado de Go.
Documentação Oficial
Seção intitulada “Documentação Oficial”| Recurso | Descrição | Link |
|---|---|---|
| Documentação do Go | Ponto de partida para tutoriais, guias e referências | go.dev/doc |
| A Tour of Go | Tour interativo pela linguagem, direto no navegador | go.dev/tour |
| Effective Go | Como escrever código Go idiomático | go.dev/doc/effective_go |
| Especificação | A definição formal da linguagem | go.dev/ref/spec |
| pkg.go.dev | Documentação da biblioteca padrão e de pacotes de terceiros | pkg.go.dev |
| Blog oficial do Go | Novidades de cada versão e artigos aprofundados | go.dev/blog |
Livros Recomendados
Seção intitulada “Livros Recomendados”| Livro | Autor(es) | Nível | Descrição |
|---|---|---|---|
| The Go Programming Language | Alan A. A. Donovan & Brian W. Kernighan | Iniciante/Intermediário | O clássico da linguagem, com exemplos e exercícios |
| Learning Go | Jon Bodner | Iniciante/Intermediário | Go idiomático e moderno, incluindo generics |
| Let’s Go / Let’s Go Further | Alex Edwards | Intermediário | Aplicações web e APIs com Go, do zero ao deploy |
| Concurrency in Go | Katherine Cox-Buday | Intermediário/Avançado | Padrões e fundamentos de concorrência em Go |
| 100 Go Mistakes and How to Avoid Them | Teiva Harsanyi | Intermediário/Avançado | Erros comuns em código Go de produção e como evitá-los |
Sites e Tutoriais
Seção intitulada “Sites e Tutoriais”| Site | Descrição | Link |
|---|---|---|
| Go by Example | Exemplos curtos e anotados de cada recurso da linguagem | gobyexample.com |
| Learn Go with Tests | Aprenda Go escrevendo testes primeiro (TDD) | quii.gitbook.io |
| Go Wiki | Wiki da comunidade, com guias como o Code Review Comments | go.dev/wiki |
| Go Style Guide (Google) | Guia de estilo usado no Google | google.github.io/styleguide/go |
Plataformas de Prática
Seção intitulada “Plataformas de Prática”| Plataforma | Descrição | Link |
|---|---|---|
| Exercism | Exercícios com mentoria gratuita | exercism.org/tracks/go |
| LeetCode | Problemas de algoritmos com suporte a Go | leetcode.com |
| Codewars | Katas de programação | codewars.com |
| Advent of Code | Desafios anuais de programação em dezembro | adventofcode.com |
Ferramentas
Seção intitulada “Ferramentas”Editores e IDEs
Seção intitulada “Editores e IDEs”| Ferramenta | Descrição | Link |
|---|---|---|
| VS Code + extensão Go | Editor leve com suporte oficial via gopls | marketplace.visualstudio.com |
| GoLand | IDE da JetBrains dedicada ao Go | jetbrains.com/go |
Qualidade de código
Seção intitulada “Qualidade de código”| Ferramenta | Descrição | Link |
|---|---|---|
| staticcheck | Análise estática avançada | staticcheck.dev |
| golangci-lint | Agregador de linters, muito usado em CI | golangci-lint.run |
| govulncheck | Encontra vulnerabilidades conhecidas nas dependências | go.dev/doc/security/vuln |
| Ferramenta | Descrição | Link |
|---|---|---|
| Go Playground | Execute e compartilhe código Go no navegador | go.dev/play |
Comunidades
Seção intitulada “Comunidades”| Comunidade | Descrição | Link |
|---|---|---|
| Gophers Slack | Slack oficial da comunidade Go | invite.slack.golangbridge.org |
| Reddit r/golang | Discussões, novidades e dúvidas | reddit.com/r/golang |
| Stack Overflow | Perguntas e respostas | stackoverflow.com/questions/tagged/go |
Dicas de Uso
Seção intitulada “Dicas de Uso”- Comece pelo Tour of Go - em poucas horas você conhece a linguagem inteira
- Combine teoria e prática - leia uma seção e escreva código logo em seguida
- Leia código da biblioteca padrão - é um ótimo exemplo de Go idiomático
- Escreva testes desde o primeiro dia -
go testjá vem pronto para uso - Construa projetos - CLIs e APIs pequenas são ótimos primeiros projetos
Contribuindo
Seção intitulada “Contribuindo”Conhece um recurso excelente que não está aqui?
- Verifique se é relevante para iniciantes/intermediários
- Teste o recurso antes de recomendar
- Adicione seguindo o formato existente
- Envie um Pull Request
Veja o Guia de Contribuição para mais detalhes.