Programación en Go: Primer Hola Mundo paso a paso

Clase 6 de 36Curso Básico de Programación en Go

Contenido del curso

Resumen

Escribir la primera línea de código en un lenguaje nuevo es siempre un momento decisivo, y en Go ese ritual comienza con el clásico hello world. A continuación encontrarás cada paso necesario para configurar tu entorno, crear el archivo principal y ejecutar tu primer programa, junto con las buenas prácticas que el propio lenguaje te obliga a seguir.

¿Cómo preparar el entorno y crear el archivo principal?

Antes de escribir código, es necesario ubicarse en la carpeta de trabajo. Desde la terminal, accede a tu directorio Codepad con cd y entra en la carpeta src, que es donde vivirán todos tus programas [0:24]. Dentro de src, crea una carpeta específica para el proyecto e ingresa en ella.

Una vez dentro, abre Visual Studio Code directamente desde la terminal escribiendo code ., lo que indica al editor que se abra en la ruta actual [1:06]. Si la terminal integrada no aparece en la parte inferior del editor, ve al menú superior, selecciona Terminal y luego Nueva terminal.

¿Por qué el archivo se llama main.go?

Dentro de la carpeta src del proyecto, crea el archivo con touch src/main.go [1:30]. Main es, por buena práctica, el punto de entrada de cualquier programa en Go. Además, todo archivo de Go debe llevar la extensión .go; sin ella, el compilador no lo reconocerá.

Es recomendable instalar la extensión oficial de Go en Visual Studio Code, desarrollada por golang.go [1:55]. Esta extensión ofrece autocompletado, importación automática de paquetes y advertencias de sintaxis que ahorran tiempo considerable durante el desarrollo.

¿Qué estructura tiene un programa básico en Go?

Todo programa en Go comienza declarando un package [2:28]. El package corresponde al nombre lógico de la carpeta donde reside el archivo; para el archivo principal siempre será main.

go package main

import "fmt"

func main() { fmt.Println("Hola mundo") }

  • func es la palabra reservada para declarar una función [2:44].
  • main() es la función principal que se ejecuta al invocar el programa.
  • fmt es el paquete estándar encargado de la impresión en consola [2:58].
  • Println imprime el texto seguido de un salto de línea. Es importante que la primera letra sea mayúscula, ya que en Go las mayúsculas determinan la visibilidad de funciones y variables.

Cuando guardas el archivo, la extensión importa automáticamente el paquete fmt si detecta que lo estás utilizando. Si dejas de usarlo y guardas, lo elimina. Esto evita que queden librerías importadas sin uso, algo que Go no permite y que en otros lenguajes suele generar código muerto [3:30].

¿Cuál es la diferencia entre go build y go run?

Existen dos formas de ejecutar el programa [4:00]:

  • go build: compila el código y genera un archivo ejecutable. Luego lo ejecutas con ./main. Es el enfoque más eficiente para producción.
  • go run: compila en una carpeta temporal, muestra el output y elimina el binario [4:30]. Es menos eficiente pero muy práctico durante el desarrollo.

bash

Compilar y ejecutar

go build src/main.go ./main

Ejecutar directamente

go run src/main.go

Ambos comandos producen la misma salida: Hola mundo.

¿Cómo Go te obliga a seguir buenas prácticas?

Una característica notable de Go es que no tolera variaciones de estilo que en otros lenguajes son opcionales [4:58]. Por ejemplo, colocar la llave de apertura en una línea separada genera un error de sintaxis:

go // Esto provoca error en Go func main() { fmt.Println("Hola mundo") }

El compilador exige que la llave esté en la misma línea que la declaración de la función [5:28]. Esto elimina debates sobre formato y garantiza que todo el código en Go luzca uniforme.

Otro ejemplo es el manejo de espacios innecesarios. Si agregas tabulaciones o espacios de más, al guardar el archivo la extensión los corrige automáticamente, alineando el código con la sintaxis estándar [5:50]. Aunque insistas en añadir espacios extra, el formatter los eliminará cada vez que guardes.

Estas restricciones convierten a Go en un lenguaje donde las buenas prácticas no son sugerencias, sino reglas que el compilador y las herramientas imponen desde el primer momento. Si ya lograste ver tu "Hola mundo" en consola, comparte cómo te fue en los comentarios.