Categoria: Go

Go nasceu no Google para escrever software de servidor que compila rápido e escala bem. Aposta na simplicidade — poucas palavras-chave, biblioteca padrão robusta e concorrência nativa por goroutines e canais — e entrega um binário único, sem dependências, o que a tornou padrão em ferramentas de infraestrutura como Docker e Kubernetes. A documentação oficial fica em go.dev.

Go

Instalando o ambiente Go

Esta aula orienta a instalação do Go, configuração do GOPATH e Go Modules, preparação do VSCode com extensões essenciais e verificação da instalação. O aluno aprenderá a ter um ambiente funcional para começar a programar em Go.

✓ Lido
Go

História do Go

Esta aula apresenta a história da linguagem Go, desde sua concepção no Google em 2007 até seu papel atual no desenvolvimento de software. Você conhecerá os criadores, as motivações por trás da linguagem e seu futuro promissor.

✓ Lido
Go

Olá, mundo em Go

Esta aula apresenta o clássico programa 'Olá, mundo' em Go, explicando a estrutura de um programa Go, o papel de package main e func main, como executar o código com go run e compilar com go build, e a importância da formatação com gofmt. O aluno aprenderá a criar, executar e formatar seu primeiro programa em Go.

✓ Lido
Go

Operadores em Go

Esta aula explora os operadores em Go, incluindo aritméticos, de comparação, lógicos, bitwise e a precedência entre eles, além de particularidades como operadores de incremento/decremento, curto-circuito e o operador de atribuição curta. O conteúdo é aprofundado com exemplos práticos e boas práticas de uso.

✓ Lido
Go

Variáveis e declarações

Esta aula aborda a declaração de variáveis em Go, incluindo as formas var e :=, o conceito de zero values, múltiplas declarações e escopo. Com exemplos práticos e exercícios, você aprenderá a declarar e usar variáveis corretamente em Go.

✓ Lido
Go

Constantes e iota

Esta aula aborda o uso de constantes em Go, incluindo a declaração com `const`, o gerador de valores `iota` para criar enums de forma idiomática, e a diferença entre constantes tipadas e não tipadas. Exemplos práticos e exercícios consolidam o aprendizado.

✓ Lido
Go

Tipos básicos

Esta aula aborda os tipos básicos da linguagem Go: inteiros, floats, strings, runes e booleanos, além de conversões explícitas entre tipos. O conteúdo inclui exemplos práticos, boas práticas e exercícios com respostas colapsáveis para fixação.

✓ Lido
Go

Funções

Esta aula aborda a declaração de funções em Go, incluindo múltiplos retornos, parâmetros variádicos e funções com retornos nomeados. O conteúdo é prático e progressivo, com exemplos de código e exercícios para fixação.

✓ Lido
Go

Maps

Esta aula aborda maps em Go, incluindo criação, acesso, verificação de existência com comma-ok idiom, remoção de chaves com delete e iteração com ordem aleatória. O conteúdo inclui exemplos práticos e exercícios com respostas ocultas.

✓ Lido
Go

Slices

Esta aula explora slices em Go, sua estrutura dinâmica, funções len e cap, append e criação de sub-slices, com ênfase em armadilhas de compartilhamento de memória.

✓ Lido
Go

Slices avançado

Esta aula aprofunda o uso de slices em Go, abordando o compartilhamento de backing array, a função copy, truques comuns como remoção e inserção, e pegadinhas frequentes. O conteúdo inclui exemplos práticos e exercícios para consolidar o aprendizado.

✓ Lido
Go

Ponteiros

Esta aula cobre o conceito de ponteiros em Go, incluindo os operadores & e *, a função new, nil pointers e segurança. O aluno aprenderá como e por que usar ponteiros em Go com exemplos práticos.

✓ Lido
Go

Strings, bytes e runes

Esta aula explora o tratamento de strings em Go, abordando a codificação UTF-8, a iteração com range, e os pacotes strings e strconv. O aluno aprenderá a manipular textos corretamente, considerando caracteres multibyte e conversões de tipos.

✓ Lido
Go

Structs

Esta aula aborda structs em Go, desde sua definição e campos até inicialização e structs anônimas. Inclui exemplos práticos e exercícios para fixação.

✓ Lido
Go

Métodos

Esta aula aborda métodos em Go, explicando como definir e usar métodos com receivers de valor e ponteiro. Serão discutidos quando usar cada tipo de receiver, como criar métodos em tipos próprios, com exemplos práticos.

✓ Lido