Artículos
-
Generales
Instalación de Go y primer programa: go run, go build y el toolchain
Aprende a instalar Go en Linux, Mac y Windows y entiende desde el primer día para qué sirven go run, go build y go install. Módulos, GOPATH, GOROOT, go.sum y por qué Go compila tan rápido, con ejemplos reales.
-
Generales
Variables y tipos en Go: var, declaración corta := y zero values
Aprende a declarar variables en Go con var y :=, los tipos básicos (int, float64, bool, string, byte, rune), los zero values que Go asigna por defecto, constantes con iota para enumeraciones y por qué no existen las conversiones implícitas entre tipos.
-
Generales
Funciones en Go: múltiple retorno, named returns y funciones variádicas
Aprende a usar funciones en Go: retorno múltiple, el patrón (valor, error), named return values con return vacío, funciones variádicas con ... y cómo pasarles un slice. Con ejemplos reales y errores del compilador incluidos.
-
Generales
Punteros en Go: & y * sin aritmética de punteros
Aprende a usar punteros en Go con los operadores & y *. La función new(), cuándo pasar por puntero o por valor, desreferenciación automática en structs con punto y el error clásico de puntero nil con su mensaje de pánico real. Con seis ejemplos prácticos.
-
Generales
Structs en Go: definición, instanciación y campos anónimos (embedding)
Aprende a definir e instanciar structs en Go, la diferencia entre campos exportados y privados, cómo usar punteros a struct, el embedding para composición de tipos, struct tags para JSON y el error típico del bucle range, con ejemplos prácticos progresivos.
-
Generales
Métodos en Go: value receivers vs pointer receivers
En Go, elegir entre value receiver y pointer receiver define si tu método puede modificar el objeto original, qué interfaces puede cumplir tu tipo y qué errores verás en tiempo de compilación. Guía con ejemplos prácticos y errores frecuentes.
-
Generales
Interfaces en Go: duck typing estático e implicit satisfaction
Las interfaces en Go se satisfacen de forma implícita: si tu tipo tiene los métodos correctos, ya cumple la interfaz sin declararlo. Aprende duck typing estático, composición de interfaces, interface{}/any, type assertion y type switch con ejemplos prácticos.
-
Generales
El tipo error en Go: crear errores, envolverlos y comprobarlos bien
El tipo error en Go es una interfaz simple con un único método Error() string. Aprende a crear errores con errors.New y fmt.Errorf, a envolver errores con el verbo %w para añadir contexto, y a comprobarlos correctamente con errors.Is y errors.As aunque hayan pasado por varias capas de la aplic...
-
Generales
defer en Go: cuándo se ejecuta, orden LIFO y usos prácticos
defer en Go pospone la ejecución de una función hasta que la función actual retorna. Aprende cuándo se evalúan los argumentos, el orden LIFO con varios defer, cómo usarlo con ficheros, recover() y las trampas habituales en bucles.
-
Generales
panic y recover en Go: cuándo usarlos y cuándo no
panic en Go detiene el goroutine actual y ejecuta los defers antes de terminar el programa. Con recover en un defer puedes interceptarlo y convertirlo en un error normal. Aprende cuándo tiene sentido usarlo y por qué no debes sustituir el tipo error con panics.









