Curso · 8 lecciones
Aprende Go desde cero, en español
Go es un lenguaje compilado, con recolector de basura y una sintaxis deliberadamente pequeña: se puede leer entera en una tarde. A cambio pide hacer las cosas de una manera concreta, y ahí es donde se atasca casi todo el mundo. Este curso va directo a eso, sin rodeos y con todo el código ejecutado.
Por qué Go se siente distinto
Si vienes de Python o de Java, lo primero que llama la atención no es lo que Go tiene, sino lo que no tiene: no hay clases, ni herencia, ni excepciones, ni genéricos hasta hace bien poco, ni dos maneras de hacer lo mismo. Esa escasez es intencionada, y es lo que hace que el código de cualquiera se lea parecido al tuyo.
Lo segundo es cómo se entrega lo que escribes:
Un programa de Go compila a un único archivo que no necesita nada instalado en la máquina de destino. Ese detalle explica buena parte de por qué el lenguaje se usa tanto en servidores y herramientas de línea de órdenes, y es la razón de que Docker, Kubernetes o Terraform estén escritos en él.
Lo que necesitas para seguir el curso
Solo Go. La instalación oficial está en go.dev/dl y no requiere configurar nada más. Para comprobar que ha quedado bien:
go version
salidago version go1.25.14 linux/amd64
No hace falta ningún entorno de desarrollo concreto. Cualquier editor con resaltado vale, y si usas Visual Studio Code, su extensión oficial de Go trae el formateo y el autocompletado ya configurados.
gofmt, y no es opinable: no hay discusiones de estilo porque el formato es uno solo. Casi todos los editores lo ejecutan al guardar. Déjalo activado y olvídate de dónde van las llaves.La ruta: ocho lecciones
Están pensadas para leerse en orden, porque cada una usa lo anterior. Si ya programas en otro lenguaje, la 1 y la 2 se pasan rápido; las que de verdad cambian la forma de escribir son la 5 y la 7.
Tipos, variables y funciones
Declaraciones con :=, valores cero y el retorno múltiple.
Leer lección →
Control y colecciones
if, for y switch, y las dos estructuras que lo sostienen todo: slices y maps.
Leer lección →
Structs, métodos e interfaces
Composición en vez de herencia, e interfaces que se cumplen sin decirlo.
Leer lección →
Punteros y valores
Qué se copia y qué no, y cuándo el receptor de un método lleva asterisco.
Leer lección →
Paquetes, pruebas y herramientas
Cómo se organiza un proyecto, go test y el resto de la caja de herramientas.
Leer lección →
Cómo está hecho este curso
Todo el código que aparece se compiló y se ejecutó con Go 1.25 antes de publicarse, y las salidas están copiadas de esa ejecución, no redactadas. Cuando una lección dice «esto no compila», es porque se intentó compilar y se anotó el error exacto que devuelve el compilador. Los esquemas son propios.
Las lecciones son cortas a propósito. Para ejemplos concretos y resueltos —leer un XML, montar un servidor web, conectar con una base de datos— está la sección de ejemplos de Go, que es complementaria.