domingo, 11 de octubre de 2026

El lenguaje de programación Go

Go es un lenguaje que ha ido cobrando algo de popularidad actualmente. Al igual que muchos este promete resolver todos los problemas de la computación.

Los desarrolladores empiezan a conocer las bondades que ofrece y promete. Crear microservicios y complejos sistemas concurrentes tolerantes a fallos ya es una realidad.

Desarrolladores que usan los lenguajes de programación habituales como C, C++, C#, Java, Python y hasta Kotlin ven como este lenguaje permite hacer cosas complicadas de una manera más accesible.

Empresas del sector financiero, educativo y otros rubros migran sus desarrollos hechos en PHP, C# y Java, por mencionar algunos lenguajes, a este poderoso lenguaje.

Este lenguaje esta basado en una arquitectura modular similar a los que se hace con otros lenguajes.

Un poderoso y concurrente lenguaje: Go

Al igual que C, es un lenguaje compilado. Permite la programación concurrente como Rust o Erlang/Elixir. En este lenguaje los tipos de datos son importantes.

Go es un lenguaje en el que si importas algo y no lo usas en el código, automáticamente lo descartará. Si defines un variable y no la usas, el compilador de Go te lo dirá.

Contrario al compilador de Java o C que ya compilado y ejecutado tu programa tendrá algunos errores y tú dirás "¿por qué no me avisaron que no estoy declarando tal o cual valor y no uso la variable "x" o "z" y me dejaste ejecutar?". Esto obliga al desarrollador a crear un mejor código.

Creando un proyecto Go

Hay dos formas para crear proyectos con Go:

  • La clásica. 
  • Con Go-Blueprint.

Crear un proyecto Go (la forma clásica)

Crearemos el clásico "Hola, mundo". Para ello crearemos el directorio y nos ubicaremos en el:

$ mkdir holamundo
$ cd holamundo

Iniciaremos un módulo (colección de paquetes y sus dependencias):

$ go mod init example.com\holamundo

Esto nos creará el módulo ``go.mod``. Ahora crearemos el ``main.go``:

package main

import "fmt"

func main() {
  fmt.Println("¡Hola, mundo en Go!")
}

La estructura de nuestro proyecto lucirá así:

holamundo/
   go.mod
   main.go

Ejecutamos:

$ go run main.go

Salida:

¡Hola, mundo en Go!

Continuamos con la segunda forma.

Crear proyecto con go-blueprint

Go-Blueprint,llanamente, es una herramienta que nos permite crear proyectos con Go. Desde la línea de comandos podremos armar un proyecto Go, además de agregarle funcionalidades. Como el hecho de integrar, por ejemplo, el framework Fiber, Gin, Gorilla/mux, configuración Docker, conexión a PostgeSQL a nuestro proyecto, entre otras cosas más.

Instalamos la herramienta:

$ go install github.com/melkeydev/go-blueprint@latest

Creamos un proyecto. Nos ubicaremos en un directorio y tecleamos desde la línea de comandos esta instrucción:

$ go-blueprint create --name hola-mundo

Nos ubicamos en el directorio creado:

$ cd hola-mundo

La estructura del proyecto lucirá así:

hola-mundo/
   .air.toml
   .env
   .gitignore
   cmd
   go.mod
   go.sum
   internal
   Makefile
   README.md

Editamos el programa principal ``cmd\api\main.go``:

package main

import "fmt"

func main() {
   fmt.Println("¡Hola, mundo con Go-Blueprint!")
}

Ejecutamos:

$ go run cmd\api\main.go

Salida:

¡Hola, mundo con Go-Blueprint!

Go-Blueprint es muy útil para quienes ya han trabajado con proyectos Go. No es recomendable para quienes apenas comienzan.

Quienes han trabajado con C encontrarán en este lenguaje algo similar. No es de sobra que uno de los co-creadores de C, Ken Thompson, también estuvo involucrado en su desarrollo. Tomando mucha inspiración de C; tomando lo mejor y olvidando lo peor.

Continuaremos hablando del lenguaje en próximas entregas.

Enlaces:

https://go.dev/
https://alquimistadecodigo.blogspot.com/2026/04/creando-proyectos-go-con-go-blueprint.html
https://alquimistadecodigo.blogspot.com/2025/12/creando-proyectos-con-go.html


No hay comentarios:

Publicar un comentario

El lenguaje de programación C

El mítico lenguaje de programación C sigue siendo el lenguaje que definió todo. Y con todo nos referimos a todo lo referente a la inf...

Etiquetas

Archivo del blog