Golang
Go, também conhecida como Golang, é uma linguagem de programação de código aberto criada pelo Google. Ela foi projetada para ser simples, eficiente, segura e altamente concorrente. É muito utilizada em sistemas distribuídos, aplicações web, microserviços e ferramentas de rede.
- Compilada e com tipagem estática
- Concorrência nativa com goroutines
- Sintaxe simples e limpa
- Gerenciamento de dependências com
go mod
Instalação
Antes de começar, baixe e instale o Go a partir do site oficial https://golang.org/dl, após a instalação, abra o terminal e digite:
Configuração de ambiente
- Crie as pastas padrão do Go:
- No Linux/macOS, adicione as variáveis de ambiente no seu
.bashrc
ou.zshrc
:
Estrutura de Projeto
O gerenciamento de pacotes no Go é feito através de módulos, que são configurados com o comando go mod
.
Isso cria o arquivo go.mod
, onde o Go controla suas dependências.
Sintaxe Básica
Você pode declarar variáveis com var
ou usar a notação curta :=
.
O Go exige que todas as variáveis declaradas sejam usadas, ou um erro será gerado na compilação.
Tipos de Dados
Os principais tipos primitivos incluem:
- Inteiros:
int
,int8
,int32
,int64
- Ponto flutuante:
float32
,float64
- Booleano:
bool
- Texto:
string
Constantes
Constantes são valores imutáveis definidos com const
.
Operadores
O Go possui os operadores comuns de outras linguagens:
- Aritméticos:
+
,-
,*
,/
,%
- Relacionais:
==
,!=
,>
,<
,>=
,<=
- Lógicos:
&&
,||
,!
Estruturas de Controle
If / Else
Switch
switch dia {
case "segunda":
fmt.Println("Início da semana")
case "sexta":
fmt.Println("Sextou!")
default:
fmt.Println("Dia comum")
}
Laços de Repetição
O Go possui apenas o for
como estrutura de repetição, mas ele pode ser usado de formas variadas.
Tradicional
While-like
Infinito
Módulos e Pacotes
Go organiza o código em pacotes (package
) e importa com import
.
Você pode criar seus próprios pacotes e importar com base no caminho relativo ou nome do módulo.
Gerenciamento de Dependências
Com o Go Modules (go mod
), você pode instalar e gerenciar bibliotecas externas.
Adicionando uma dependência
O go.mod
será atualizado automaticamente.
Usando a biblioteca
Execução e Compilação
Executar diretamente
Compilar para binário
Exemplo Completo
package main
import (
"fmt"
"math"
)
func main() {
var nome string = "Golang"
idade := 10
fmt.Println("Nome:", nome)
fmt.Println("Idade:", idade)
if idade > 5 {
fmt.Println("Go é maduro!")
}
for i := 0; i < 3; i++ {
fmt.Printf("Iteração: %d", i)
}
raiz := math.Sqrt(49)
fmt.Printf("A raiz quadrada de 49 é %.2f", raiz)
}