Aprenda a linguagem Go com um tutorial Golang em português

Siga um curso da linguagem Go (Golang) do zero ao backend com uma trilha prática: aulas gratuitas, instalação, sintaxe, módulos, API REST, testes, banco de dados, concorrência, Docker e carreira no Brasil.

Resposta rápida: este é um tutorial de Go (Golang) em português. Se você está aprendendo, comece com instalação, go mod, variáveis, funções, slices, structs e tratamento de erros. Em seguida, construa uma API REST com net/http, adicione testes, PostgreSQL e Docker, e só depois avance para concorrência, microsserviços e Kubernetes. Esta página organiza o curso de Go em português por nível, com guias gratuitos, exemplos copiáveis e uma rota clara até um projeto de backend.

Se você quer começar agora, escolha um destes caminhos:

A linguagem Go (Golang) em resumo

Go e Golang são a mesma linguagem. O apelido “Golang” nasceu do endereço golang.org, adotado porque a palavra “go” sozinha é difícil de pesquisar em buscadores. A linguagem foi criada no Google por Robert Griesemer, Rob Pike e Ken Thompson, anunciada em novembro de 2009 e lançada em versão 1.0 em março de 2012.

Na prática, Go é compilada e tipada estaticamente, com coletor de lixo e concorrência nativa por goroutines e channels. Ela gera um binário único, o que simplifica o deploy em servidores, containers e funções serverless. Para um mergulho completo na história e nas decisões de design, leia o que é Go/Golang e veja onde ela aparece no mercado brasileiro.

Qual trilha de Go escolher?

Seu objetivoComece aquiProjeto para validar
Entender a linguagemO que é Go/Golangprograma de terminal pequeno
Aprender do zeroGo para iniciantesservidor HTTP com duas rotas
Seguir um curso gratuitoCurso Golang gratuitoAPI REST com banco e testes
Migrar de outra stackGo vs Python, Java ou Node.jsreescrever um serviço conhecido
Trabalhar com backendGo para backendCRUD com PostgreSQL e Docker
Preparar-se para vagasRoadmap Go 2026portfólio público com README

Não tente consumir todos os materiais de uma vez. Escolha uma rota, escreva código todos os dias e só avance quando conseguir explicar o que construiu. Em Go, um projeto pequeno que compila, tem testes e trata erros vale mais que uma coleção de snippets copiados.

Curso de Go para iniciantes: a ordem certa

1. Instalação e primeiro programa

Comece pelo guia de primeiros passos. Instale a versão estável, confira o ambiente com go version, crie uma pasta e inicialize o módulo:

mkdir meu-primeiro-go
cd meu-primeiro-go
go mod init exemplo.com/meu-primeiro-go
go run .

O objetivo inicial é entender quatro peças: package main, import, func main() e o comando go run. O tutorial de Go para iniciantes leva essa base até um servidor HTTP funcionando em localhost:8080.

2. Sintaxe e estruturas de dados

Depois, pratique variáveis, funções, if, for, switch, arrays, slices, maps, structs, métodos e ponteiros. Use a cheatsheet de sintaxe Go como consulta rápida, não como material para decorar.

Faça programas curtos: calculadora, contador de palavras, leitor de CSV, lista de tarefas no terminal e cliente de uma API pública. Cada exercício deve caber em poucas funções e terminar com go fmt ./... e go test ./... quando houver regras que possam ser testadas.

3. Módulos, pacotes e erros

Aprenda Go Modules e depois pratique com o guia de Go Modules na prática. Você precisa saber por que existe um go.mod, como importar pacotes, quando executar go mod tidy e como separar código sem criar uma arquitetura gigante.

Em paralelo, estude tratamento de erros em Go: retorno (valor, error), fmt.Errorf com %w, errors.Is e errors.As. Go não esconde falhas atrás de exceções; aprender a dar contexto ao erro é parte central da linguagem.

4. API REST e JSON

Quando a sintaxe estiver confortável, construa uma API REST com Go. Comece com a biblioteca padrão: net/http, encoding/json, context e log/slog. Implemente GET, POST, PUT e DELETE, valide o corpo, limite o tamanho da requisição e configure timeouts.

Se quiser comparar abordagens, veja a série de API REST com Gin. Framework é uma escolha posterior; entender http.Handler, request, response e status HTTP evita dependência de mágica.

5. Testes, banco e Docker

A API fica útil quando ganha persistência e confiança. Siga testes em Go para aprender casos de tabela, subtests e httptest. Depois conecte Go com PostgreSQL usando queries parametrizadas, migrations, contexto e pool de conexões.

Por fim, empacote o serviço com Go e Docker. Um bom projeto de estudo deve rodar com poucos comandos, ter configuração por ambiente e explicar no README como executar testes e subir a aplicação.

Plano prático de 30 dias para aprender Golang

Se você precisa de um cronograma curto, use este plano como primeiro ciclo. Ele não transforma ninguém em especialista em um mês; cria uma base verificável para continuar.

PeríodoFocoEntrega
Dias 1–5instalação, sintaxe, funções e go modcinco programas de terminal
Dias 6–10slices, maps, structs, métodos e errosCLI que lê e grava arquivo
Dias 11–16net/http, rotas e JSONAPI em memória com CRUD
Dias 17–21testing, casos de tabela e httptesthandlers cobertos por testes
Dias 22–26PostgreSQL e migrationsAPI persistente
Dias 27–30Docker, README e revisãoprojeto publicável no GitHub

Se já trabalha com Java, Python, C#, PHP ou JavaScript, você pode reduzir o tempo dos fundamentos e investir mais em erros, interfaces, context, testes e concorrência. Se Go é sua primeira linguagem, dobre o período e faça mais exercícios antes de entrar em banco de dados.

Tutoriais práticos de Go para backend

Depois da trilha inicial, escolha o assunto que aparece no seu projeto:

A recomendação é aprofundar só quando existir uma necessidade concreta. Não estude Kubernetes antes de conseguir rodar e testar um serviço local. Não use goroutines antes de saber quem cancela o trabalho. Não adicione framework apenas porque um tutorial antigo começou por ele.

Documentação e referência rápida

Aprender Go também significa aprender a pesquisar. O guia de documentação Go em português explica quando usar go.dev/doc, pkg.go.dev, go doc e go help. Para consulta durante a prática, mantenha a Go Cheat Sheet aberta.

Comandos essenciais:

go version       # versão instalada
go fmt ./...     # formata os pacotes
go test ./...    # executa os testes
go vet ./...     # aponta construções suspeitas
go mod tidy      # sincroniza dependências
go build ./...   # compila os pacotes

Quando um exemplo de blog, vídeo ou IA divergir do compilador, confirme na documentação correspondente à versão usada no projeto. O toolchain e os testes são a fonte final de verdade.

Go comparado com outras linguagens

Se você está decidindo se vale migrar, use os comparativos para avaliar o trabalho real, não só benchmark:

A melhor linguagem depende do problema, do time e do ecossistema existente. Go costuma fazer mais sentido quando simplicidade operacional, concorrência, serviços de rede, CLIs e binários fáceis de distribuir são prioridades.

Do curso de Go para a carreira

Para transformar estudo em oportunidade, conclua um projeto que outra pessoa consiga executar. Inclua API, banco, testes, Docker, README, exemplos de requisição e decisões técnicas curtas. Depois use estes recursos:

Não espere terminar “todo Go” para publicar. Uma API pequena, testada e bem explicada já permite receber feedback. Depois você pode adicionar autenticação, observabilidade, mensageria ou deploy conforme a vaga e o tipo de backend que deseja construir.

Comece agora

Se você está no zero, siga Go para iniciantes. Se prefere uma sequência com módulos e projeto final, abra o curso Golang gratuito. E se quer experimentar antes de instalar qualquer coisa, faça uma aula no curso interativo de Go.

A rota recomendada é simples: fundamentos → erros e módulos → API REST → testes → PostgreSQL → Docker → concorrência → carreira. Escolha o primeiro passo e escreva código hoje.

Novo · curso.golang.com.br

Curso de Golang: 5 aulas grátis para começar

São 128 aulas práticas com compilador Go direto no navegador. Você começa pela imersão do zero, pratica padrões de entrevista (binary search, two pointers, DFS, BFS e backtracking) e aprende o Jeito Go — Effective Go em português. As 5 primeiras aulas são grátis e não pedem cartão.

Fazer 5 aulas grátis →

Curso Golang: roteiro prático para sair do zero

Se você chegou aqui pesquisando por curso Golang, curso de Go ou go tutorial, o caminho mais rápido não é decorar todos os recursos da linguagem. O melhor resultado vem de uma sequência curta: instalar Go, entender o formato de um programa, criar um módulo, escrever funções pequenas, testar comportamento e só então conectar HTTP, banco de dados e deploy.

Go foi desenhada para reduzir cerimônia. Um projeto real começa com poucos comandos: go mod init para criar o módulo, go run para executar, go test para validar, go fmt para formatar e go build para gerar um binário. Essa simplicidade é o motivo de Go aparecer tanto em backend, infraestrutura, ferramentas de linha de comando, APIs internas, plataformas cloud e serviços de alta concorrência.

Para estudar com eficiência, use este roteiro em quatro blocos. Primeiro, rode o tutorial Go para iniciantes e escreva programas pequenos com variáveis, funções, structs, slices e maps. Segundo, aprenda Go modules, porque todo projeto moderno usa módulos para dependências e versionamento. Terceiro, construa uma API REST com Go e conecte PostgreSQL. Quarto, adicione testes, concorrência, Docker e observabilidade.

O erro comum é pular direto para frameworks e copiar código sem entender a biblioteca padrão. Go recompensa quem domina net/http, context, errors, encoding/json, database/sql, testing e sync. Esses pacotes aparecem em entrevistas e em produção. Quando encontrar uma dúvida, combine este tutorial com o guia de documentação Go em português: ele mostra como usar pkg.go.dev, go doc e a documentação oficial sem se perder no inglês técnico.

Também vale conectar estudo com mercado desde cedo. Depois dos primeiros projetos, revise salários de desenvolvedor Go, veja empresas que usam Go no Brasil e acompanhe vagas Golang atualizadas. Isso mostra quais assuntos têm retorno real: APIs, mensageria, PostgreSQL, Docker, Kubernetes, testes, observabilidade e sistemas distribuídos.

Se você já sabe programar em Python, JavaScript, Java ou PHP, dá para ficar produtivo em Go em poucos dias. Se está começando do zero, reserve algumas semanas para repetir os fundamentos com calma. O objetivo deste hub é ser seu índice permanente: volte aqui quando precisar revisar sintaxe, escolher o próximo projeto ou transformar estudo em portfólio.

Trilha recomendada para aprender Go

A ordem abaixo evita o erro comum de pular direto para frameworks. Primeiro entenda a linguagem, depois construa uma API, conecte banco de dados, escreva testes e só então pense em deploy.

Mapa de conceitos

Básico

Fundamentos

  • Variáveis e tipos
  • Funções e métodos
  • Structs e interfaces
  • Slices e maps
  • Controle de fluxo
  • Ponteiros

~1 semana

Intermediário

Produção

  • Goroutines e channels
  • Tratamento de erros
  • Testes com go test
  • Módulos com go mod
  • HTTP servers
  • JSON e APIs

~2-3 semanas

Avançado

Performance

  • Generics (1.18+)
  • Reflection
  • Profiling com pprof
  • Race detector
  • CGO
  • Assembly

Contínuo

Recursos

Documentação

Livros

Vídeos

Cursos

Ferramentas

VS Code + Go Extension

Editor gratuito com autocomplete, debugging, formatação automática. A maioria dos devs Go usa.

Instalar extensão

GoLand

IDE da JetBrains. Pago, mas com refatoração avançada e debugging superior. Vale se Go é seu dia a dia.

jetbrains.com/go

golangci-lint

Roda dezenas de linters de uma vez. Encontra bugs, código morto, problemas de performance.

golangci-lint.run

Delve

Debugger oficial do Go. Funciona na linha de comando e integra com VS Code e GoLand.

github.com/go-delve/delve

Tutoriais Go em português

Conteúdo original em português, do básico ao avançado. Use esta lista como índice quando precisar revisar um assunto específico.

40 Perguntas de Entrevista Go (Golang) em 2026

40 perguntas de entrevista de Go (Golang) com respostas, de júnior a sênior: goroutines, channels, …

Como Aprender Go em 2026: Guia Completo para Iniciantes

Aprenda Go do zero: roadmap de 12 semanas, recursos gratuitos, cursos em português, livros e dicas …

Como Criar uma API REST com Golang e Gin - Parte 1: Introdução

Aprenda a criar uma API REST completa com Golang e o framework Gin. Parte 1: Introdução, instalação …

Como Criar uma API REST com Golang e Gin - Parte 2: Estruturando os Handlers

Parte 2 da série: aprenda a estruturar handlers, criar rotas CRUD completas e gerenciar dados em …

Como Criar uma API REST com Golang e Gin - Parte 3: Validação e Middleware

Parte 3 da série: adicione validação de dados, middleware de logging/autenticação e tratamento de …

Como Criar uma API REST com Golang e Gin - Parte 4: Banco de Dados com GORM

Parte 4 (final): conecte a API Golang/Gin ao PostgreSQL usando GORM, implemente migrations e prepare …

Como Criar uma API REST com Golang e Gin (Guia Completo 2026)

Aprenda a criar uma API REST completa em Golang usando o framework Gin. Passo a passo do zero ao …

Curso de Golang Gratuito: Aprenda Go do Zero com Projeto

Curso de Golang gratuito e online em português: trilha de 8 semanas do zero ao projeto final, com …

Docker Go e Docker Golang: Deploy de Aplicação

Faça deploy de Go com Docker: Dockerfile multi-stage, Compose e diagnóstico de no such file or …

Erros em Go: errors.Is, errors.As, %w e Boas Práticas

Aprenda tratamento de erros em Go com error, if err != nil, fmt.Errorf com %w, errors.Is, errors.As, …

Go API e Golang API: Como Criar uma API REST em 2026

Como criar uma Go API (Golang API / API em Go) com net/http: REST, CRUD, JSON, testes e checklist de …

Go com AWS Lambda: API Serverless em Produção

Aprenda a criar uma API serverless em Go com AWS Lambda, API Gateway, DynamoDB, testes locais, build …

Go com PostgreSQL: conexão e CRUD usando pgx

Conecte Go ao PostgreSQL com pgx/v5: exemplo executável, DATABASE_URL, CRUD, pgxpool, transações e …

Go Docs e Documentação Go (Golang): Guia Prático

Go docs e Golang documentation em português: quando usar go.dev, pkg.go.dev, go doc e go help, com …

Go Modules na Prática: Guia Completo

Tutorial prático de Go Modules: go mod init, go mod tidy, go.sum, replace, workspace e mono-repos. …

Go Modules: Gerenciando Dependências em Go

Domine Go Modules: go mod init, go mod tidy, go.sum vs go.mod, versioning semântico e replace. Tudo …

Go para Back-end: Por Que é a Melhor Escolha em 2026

Go para backend em 2026: quando usar, stack real (HTTP, SQL, filas, observabilidade), API de …

Go para Iniciantes: Primeiros Passos em 2026

Go para iniciantes em português: instale Go 1.26, rode o Hello World, aprenda variáveis, funções e …

Go Test e Golang Test: Como Rodar Testes em Go

Aprenda go test e golang test na prática: rode testes com testing, table-driven tests, -race, …

Go vs C# (C Sharp): qual escolher para backend?

Go ou C#/.NET para backend? Compare APIs, goroutines, async/await e deploy com Native AOT. Veja …

Go vs Java: Qual Escolher em 2026?

Go vs Java em 2026: compare performance, memória, concorrência, ecossistema, salários e mercado no …

Go vs Kotlin: Qual Escolher em 2026?

Go vs Kotlin em 2026: Go vence em startup, memória, deploy de binário único e infraestrutura …

Go vs Node.js: Qual Escolher para Backend em 2026?

Compare Go e Node.js para backend: CPU, I/O, goroutines e event loop. Veja como medir latência, …

Go vs PHP: Qual Escolher em 2026?

Go vs PHP em 2026: Go é mais rápido, consome menos memória e paga melhor em vagas remotas; PHP tem …

Go vs Python: Qual Escolher em 2026?

Go vs Python em 2026: Go é 10–100× mais rápido e paga melhor em backend; Python domina dados e ML. …

Go vs Rust: Qual Escolher em 2026?

Go vs Rust em 2026: compare performance, memória, concorrência, curva de aprendizado e mercado para …

Go vs TypeScript: Qual Escolher em 2026?

Go vs TypeScript em 2026: Go vence em performance, memória, concorrência e deploy de binário único; …

Goroutines e Go Routines: Channels em Go

O que são goroutines em Go (também go routines) e go channels: select, WaitGroup, context, worker …

Interfaces em Go (Golang): exemplos, receivers e nil

Aprenda interfaces em Go (Golang): implementação implícita, receivers, any e type assertions. Veja …

JWT em Go: Autenticação Completa na Prática

JWT em Go com golang-jwt/v5: gerar e validar tokens, middleware de autenticação, refresh token, …

Microservices com Go: Arquitetura e Exemplo Prático

Microservices com Go na prática: quando usar, arquitetura, REST e gRPC, mensageria, Docker, …

O que é Go (Golang)? Guia da Linguagem do Google

Go (Golang) é a linguagem de programação open source criada no Google. Veja o que é, para que serve, …

Primeiros Passos com Go

Tutorial de 5 minutos para começar com Go: download, instalação, GOPATH, primeiro programa Hello …

Roadmap Go 2026: 6 Meses do Zero ao Mercado

Roadmap completo de Go em 2026: 6 meses, 6 fases, 1 projeto por mês. Do hello world a APIs em …

Vale a Pena Aprender Go em 2026? Mercado, Usos e Limites

Vale a pena aprender Go em 2026? Veja onde a linguagem é usada, mercado no Brasil, curva de …

WebSocket com Go: Chat em Tempo Real

Crie aplicações real-time com WebSocket em Go. Tutorial passo a passo para construir um chat com …

Como estudar Go em português sem ficar travado

A documentação oficial de Go é objetiva, mas muitos exemplos avançados ainda estão em inglês. A melhor estratégia é usar material em português para ganhar contexto e voltar à documentação oficial para confirmar comportamento, pacotes e versões.

Para quem quer trabalhar com backend, o caminho mais rentável é transformar cada conceito em um projeto pequeno: uma CLI, uma API REST, um CRUD com PostgreSQL, uma fila simples, testes de tabela e um container Docker. Isso cria portfólio e deixa o estudo conectado às vagas reais.