Junior — Middle
Explique el concepto de variable global y sus características en un programa.
sobes.tech AI
Respuesta de la IA
Una variable global en Go es una variable declarada fuera de las funciones, generalmente en un paquete, y accesible en todo el paquete o incluso desde otros paquetes cuando se exporta (con letra mayúscula).
Características de las variables globales:
- Se inicializan al arrancar el programa, antes de ejecutar main.
- Tienen ámbito de paquete si el nombre empieza con minúscula, o se exportan si empieza con mayúscula.
- Se usan para almacenar estados accesibles desde diferentes funciones.
- Pueden causar problemas con acceso concurrente en programas multihilo, por lo que a menudo requieren sincronización (por ejemplo, con mutex).
Ejemplo de una variable global:
package main
import "fmt"
var counter int = 0 // variable global
func increment() {
counter++
}
func main() {
increment()
fmt.Println(counter) // Imprimirá 1
}
Se debe minimizar el uso de variables globales para evitar complicaciones en el mantenimiento y las pruebas del código.