Uma linguagem feita para clareza
Go foi projetada no Google para resolver problemas reais de engenharia: builds lentos, código difícil de ler e suporte ruim a concorrência. O resultado é uma linguagem estaticamente tipada, compilada e com garbage collector — mas que parece tão produtiva quanto uma linguagem dinâmica.
Por que Go
- Sintaxe simples: Poucas palavras-chave e regras consistentes significam menos tempo lendo documentação
- Compilação rápida: Builds em segundos, mesmo em projetos grandes
- Concorrência nativa: Goroutines e channels são cidadãos de primeira classe
- Biblioteca padrão completa: A maioria do que você precisa já está incluída
- Legível por padrão: O código é fácil de acompanhar mesmo para quem está chegando agora
O que você vai aprender
Cada artigo nesta categoria cobre um conceito fundamental de Go:
- Os tipos nativos que Go oferece e como a memória funciona por trás deles
- Variáveis, constantes e como Go lida com declarações
- Identificadores, keywords e regras de nomenclatura
- Operadores: aritmética, comparação, lógica e bitwise
- Strings: encoding, manipulação e Unicode
- Controle de fluxo: condicionais, loops, switch, break, continue, labels e goto
- Tipos compostos: arrays, slices, maps e structs
- Funções, múltiplos valores de retorno, parâmetros variádicos e closures
- Defer e como ele interage com panic e recover
- Pointers e o modelo call-by-value do Go
- Methods, custom types e struct embedding
- Interfaces: structural typing, empty interface, type assertions e type switches
- Errors: custom error types, wrapping e errors.Is / errors.As
- Gerenciamento de dependências com Go modules
- Design de packages e organização de código
- Padrões de project structure: de um único arquivo até serviços multi-binário e workspace mode