Aprender Go: Curso Code
Aprender Go: Curso Code — Um tutorial de Golang com compilador, race detector e katas diários no seu celular
Aprender Go: Curso Code é um tutorial de Golang gratuito para iOS e Android, voltado para iniciantes e desenvolvedores profissionais, com compilador e editor de Go que executam seu código em uma toolchain real de Go (é necessário ter conexão com a internet). Verifique seu código com gofmt, go vet e o race detector e percorra 51 cursos, desde o primeiro fmt.Println até goroutines, APIs REST e gRPC, com a ajuda de um AI Mentor para as partes que não ficarem claras.
- Preço
- Grátis, upgrade para Pro
- Plataformas
- iOS e Android
- Idiomas
- 22
- Classificação etária
- 4+
- Requisitos
- iOS 15.1 ou posterior


Apague a palavra-chave go e veja o mesmo trabalho levar três vezes mais tempo.
Essa é a primeira coisa que o app faz você fazer com Go: executar três tarefas de 120 ms cada, ver o total ficar bem abaixo de 360 ms e, então, remover a única palavra-chave que as tornou concorrentes. A proposta inteira da linguagem está nessa palavra, e o app permite que você sinta isso antes de explicar.
O que é
Aprender Go: Curso Code é um app gratuito para iOS e Android para aprender Go, a linguagem compilada por trás de grande parte dos softwares atuais de nuvem e servidores. Ele oferece 51 cursos e 203 lições classificadas do nível iniciante ao avançado, um editor de código que executa programas em uma toolchain real de Go, um kata diário, um Laboratório de Concorrência com um race detector real e uma trilha guiada na qual você cria seu próprio núcleo HTTP. Um AI Mentor responde a perguntas sobre qualquer lição.
Dentro do app
Como ele é





O curso
O que o curso de Go aborda
51 cursos e 203 lições da própria lista de cursos do app, classificados de A1 a C1 e indo do primeiro programa até profiling e o garbage collector.
Boas-vindas ao Go e fundamentos
O que é Go e por que o Google o criou; depois, variáveis, tipos e valores zero, constantes e fluxo de controle com if, for e switch.
Funções, Slices e Maps
Funções com vários valores de retorno, defer e parâmetros variádicos, arrays, slices e maps, além de strings, formatação com fmt e o pacote time.
Structs, Pointers e Interfaces
Structs e métodos, receptores por valor versus por ponteiro, pointers, interfaces implícitas e duck typing, além de embedding para composição.
Erros, Pacotes e a Biblioteca Padrão
Tratamento explícito de erros com errors.Is e errors.As, pacotes e módulos, entrada e saída de arquivos e JSON, expressões regulares, ordenação e I/O com buffer.
Goroutines, Channels e Sync
Fundamentos de goroutines e channels, select e padrões de channels, mutexes e o pacote sync, context para cancelamento, além de pools de workers e pipelines.
HTTP, REST e Bancos de Dados
Servidores e clientes HTTP com net/http, APIs REST com Gin, padrões de middleware, database/sql com sqlx e pgx, GORM e WebSockets.
Testes, Ferramentas e Deploy
Testes orientados por tabela e subtesses, apps de linha de comando com Cobra, configuração com Viper, logging estruturado com slog e builds multiestágio do Docker.
Go avançado
Generics com parâmetros de tipo e constraints, benchmarking e profiling com pprof, gRPC com Protocol Buffers, reflection e o modelo de memória.
Como funciona
Como funciona uma sessão
Cada lição é uma leitura curta seguida de código que você executa, para que a ideia e a prática aconteçam na mesma sessão.
Leia uma lição curta
Abra um curso e faça uma única lição de poucos minutos, com a teoria em linguagem simples e um pequeno exemplo, como o programa com package main e fmt.Println da primeira lição.
Execute em uma toolchain real de Go
O editor envia seu programa para um executor de Go e mostra a saída. gofmt, go vet e o race detector são executados da mesma forma, então o app precisa de conexão quando você toca em executar, e um programa que trava mostra uma explicação do erro em linguagem simples.
Pratique de outro jeito
Depois de um tópico, faça o quiz, resolva o kata diário, avance por um quebra-cabeça de concorrência ou peça ao AI Mentor para fazer perguntas. Cada opção aborda a mesma ideia de uma maneira diferente, e é isso que faz o conhecimento permanecer.
O que está incluído
O que vem com o app
51
Cursos, de A1 a C1
203 lições distribuídas em 51 cursos, desde fundamentos de Go, slices e maps até interfaces, tratamento de erros, goroutines, net/http, Gin, acesso a bancos de dados, implantação com Docker, gRPC e o garbage collector.
-race
Laboratório de Concorrência com o race detector
Seis quebra-cabeças executáveis abrangem duas goroutines em um channel, um handshake sem buffer, uma distribuição de trabalho com WaitGroup, um contador que perde atualizações, um map com dois escritores e um deadlock. Você também pode executar seu próprio código com o race detector, gratuitamente e sem limite diário.
Diário
Um novo kata todos os dias
Um exercício de Go verificado com base em uma tabela de casos, incluindo casos ocultos, com uma explicação de referência ao final. O kata diário é gratuito para todos; o Pro libera a biblioteca completa, as soluções de referência e as explicações.
Médico
Go Doctor
Verifique se o gofmt reescreveria seu arquivo e aplique a alteração, execute o go vet para encontrar problemas e, com o Pro, pergunte à análise de escape do compilador por que um valor é alocado. A formatação é ilimitada, e o go vet é limitado a três execuções por dia no plano gratuito.
7 etapas
Crie seu próprio núcleo HTTP
Uma trilha guiada na qual você escreve a requisição, a resposta, handlers como funções, roteamento, parâmetros de caminho, middleware e JSON com erros encapsulados, avançando uma etapa verificada por vez.
AI
AI Mentor e entrevista simulada
Peça ao AI Mentor para explicar um conceito, fornecer um roteiro de estudos ou fazer perguntas. Uma entrevista simulada faz cinco perguntas de Go no nível júnior, pleno ou sênior e atribui uma pontuação às suas respostas, com uma entrevista avaliada gratuita por semana.
Revisão
Go Recall e Go by Example
Cards curtos de “o que isso imprime?” sobre as armadilhas clássicas, como a ordem de defer, maps nil e o compartilhamento de memória em append, além de trechos executáveis da biblioteca padrão que você pode executar e editar.
Contexto
Por que aprender Go para trabalhar com backend e o que a torna diferente?
Go é uma linguagem compilada e estaticamente tipada, criada no Google, e amplamente usada em serviços web, ferramentas de linha de comando e infraestrutura de nuvem. Seu atrativo para backend é que muita coisa já vem integrada: a concorrência faz parte da linguagem, a biblioteca padrão cobre a maior parte do que um serviço pequeno precisa e um programa é compilado em um único binário, sem nada para instalar além dele. A linguagem é deliberadamente pequena, o que torna sua leitura rápida, mas dá aos iniciantes alguns hábitos desconhecidos para aprender logo no começo.
Goroutines e channelsconcorrência sem gerenciar threads
Uma goroutine é uma função iniciada com a palavra-chave go, e um channel é o canal que as goroutines usam para passar valores. Juntos, eles substituem a maior parte do gerenciamento manual de threads, e é por isso que a concorrência é ensinada logo no início, em vez de ficar reservada para um tópico avançado.
Erros são valoressem exceções
Uma função de Go que pode falhar retorna um error como segundo valor comum, e quem a chama verifica isso imediatamente. Há mais código do que em um bloco try, mas isso faz com que cada caminho de falha fique visível no código que você está lendo.
Interfaces implícitasduck typing, verificado em tempo de compilação
Um tipo satisfaz uma interface apenas por ter os métodos corretos; nada precisa ser declarado. Isso mantém os pacotes pouco acoplados e também é onde mora uma surpresa clássica de Go: uma interface que contém um ponteiro nil não é, por si só, nil.
Um binário e uma biblioteca padrão amplapor que a implantação é simples
Go compilado produz um único executável, e pacotes como net/http, encoding/json e database/sql vêm com a linguagem. Muitas vezes, um serviço pequeno não precisa de nenhum framework de terceiros, e esse é um dos motivos pelos quais imagens Docker de programas em Go podem ser pequenas.
Para quem é
Para quem é — e para quem não é
É uma boa opção se você
- Quer um curso de Golang que possa fazer em sessões curtas no celular
- Já programa em outra linguagem e quer ver goroutines e channels funcionando de verdade
- Está buscando vagas de backend ou cloud e quer questões de entrevista sobre Go com feedback e pontuação
- Aprende melhor com exercícios curtos e cards de armadilhas do que com vídeos longos
- Quer verificar formatação, resultados do vet e data races no código que você mesmo escreveu
Não é a ferramenta certa se você
- Precisa executar programas que importam net/http ou usam generics no runner do app, que é um sandbox Go 1.13
- Quer executar código sem conexão, porque o runner funciona online
- Espera que tudo seja gratuito: o primeiro curso, o kata diário e uma cota diária do Mentor de IA são gratuitos, e o Pro desbloqueia o restante
- Precisa criar e publicar um serviço grande com vários pacotes, algo que ainda exige um laptop e o toolchain completo
Dúvidas
Perguntas frequentes
Qual é a melhor maneira de aprender Golang pelo celular?
Lições curtas acompanhadas de código que você realmente executa são melhores do que apenas ler, e Go recompensa a prática porque seus melhores recursos, goroutines e o race detector, são comportamentais. Aprender Go: Curso Code combina lições de poucos minutos com um editor, um kata diário e um Concurrency Lab. É gratuito para começar no iOS e Android, com 51 cursos organizados do nível iniciante ao avançado.
É possível compilar e executar código Go no celular?
Sim, com uma conexão. Aprender Go: Curso Code envia seu programa para um runner Go e exibe a saída, e o mesmo runner oferece gofmt, go vet e o race detector. O código não é executado no próprio celular, então você precisa estar online ao tocar em executar, e o runner tem limites, como uma pequena quantidade de memória disponível e um tamanho máximo de binário.
O runner do app oferece suporte a generics?
Ainda não. O runner do Aprender Go: Curso Code usa Go 1.13, e generics chegaram no Go 1.18, portanto um programa que use parâmetros de tipo ou a palavra-chave any não será compilado nele. O app informa isso em linguagem simples quando acontece e sugere a forma mais antiga. O curso de generics continua disponível para leitura como uma lição.
O que é o race detector do Go e como o app o utiliza?
O race detector informa quando duas goroutines acessam a mesma memória sem um lock entre elas, um bug que só aparece algumas vezes. No Aprender Go: Curso Code, o Concurrency Lab executa desafios como um contador atualizado por 200 goroutines sob o detector e permite adicionar um mutex e executar novamente. Você também pode colar seu próprio código com goroutines e executá-lo sob o detector.
O que é um kata de Go?
Um kata é um exercício pequeno e focado que você resolve com código, como inverter corretamente uma string com texto não ASCII ou encapsular um erro para que errors.Is continue encontrando-o. O Aprender Go: Curso Code oferece um novo kata diário, verifica sua função em uma tabela de casos que inclui casos ocultos e explica o padrão depois. O kata diário é gratuito para todos.
Preciso ter experiência em programação para começar?
Não. Aprender Go: Curso Code começa explicando o que é Go e por que ele existe; depois, aborda variáveis, tipos e fluxo de controle, e cada conceito é explicado em linguagem simples antes de ser praticado. A experiência em outra linguagem ajuda você a avançar mais rápido nos cursos iniciais, mas o primeiro curso foi escrito para quem está começando do zero.
O Learn Go é gratuito?
O app é gratuito para baixar. O primeiro curso é gratuito, assim como o kata diário, uma cota diária do Mentor de IA, verificações ilimitadas com gofmt, execuções ilimitadas sob o race detector e algumas execuções de go vet por dia. O Pro desbloqueia todos os cursos, remove os anúncios, oferece Mentor de IA ilimitado e libera a biblioteca de katas e a análise de escape.
Há um certificado ao final?
Sim. Ao passar no exame final, você recebe um certificado de conclusão do curso. Ele mostra o trabalho que você realizou e combina bem com um pequeno projeto que você possa explicar em uma entrevista, mas não é uma qualificação acadêmica credenciada.
O Learn Go ajuda na preparação para entrevistas de Golang?
Ajuda. A entrevista simulada faz cinco perguntas em nível júnior, pleno ou sênior, desde a diferença entre slices e arrays até o que um valor de interface contém em tempo de execução, e dá uma pontuação às suas respostas com feedback. Os cards do Go Recall treinam as armadilhas mais comuns, e os tópicos em que você teve dificuldade na entrevista são adicionados ao seu baralho de revisão. Uma entrevista com pontuação por semana é gratuita.
Em quais plataformas e idiomas ele está disponível?
Aprender Go: Curso Code funciona no iOS pela App Store e no Android pelo Google Play, e a interface está disponível em 22 idiomas. A classificação é 4+, portanto nada do material tem restrição de idade.
Comece agora
Escreva sua primeira goroutine hoje
Comece gratuitamente no iOS e no Android, em 22 idiomas.
Mais da CoddyKit
Disponível em iOS e Android.