Junior — Middle
Explique o conceito de variável global e as suas características num programa.
sobes.tech IA
Resposta da IA
Uma variável global em Go é uma variável declarada fora das funções, geralmente num pacote, e acessível em todo o pacote ou até mesmo de outros pacotes quando exportada (com letra maiúscula).
Características das variáveis globais:
- São inicializadas na inicialização do programa, antes de executar o main.
- Têm escopo de pacote se o nome começar com letra minúscula, ou são exportadas se começar com maiúscula.
- São usadas para armazenar estado acessível a partir de diferentes funções.
- Podem causar problemas com acesso concorrente em programas multithread, frequentemente exigindo sincronização (por exemplo, com mutex).
Exemplo de uma variável global:
package main
import "fmt"
var counter int = 0 // variável global
func increment() {
counter++
}
func main() {
increment()
fmt.Println(counter) // Vai imprimir 1
}
O uso de variáveis globais deve ser minimizado para evitar dificuldades na manutenção e testes do código.