1 Estructura básica de un programa en Go
Un programa en Go comienza con la declaración de un paquete, seguido por la importación de paquetes requeridos, declaraciones de variables a nivel de paquete, constantes, tipos y finalmente las funciones contenidas dentro del paquete. Tomando "Hola Mundo" como ejemplo, la siguiente es una estructura básica típica de un programa en Go:
package main // Declara el paquete principal, indicando un programa ejecutable de forma independiente
import "fmt" // Importa el paquete fmt, que contiene funciones de entrada y salida
// función main, el punto de entrada del programa
func main() {
fmt.Println("¡Hola, Mundo!") // Muestra ¡Hola Mundo! en la terminal
}
Concepto y propósito de los paquetes
En el lenguaje Go, un paquete es una colección de múltiples archivos fuente de Go y sirve como un mecanismo de reutilización de código a un nivel alto. Cada archivo en Go pertenece a un paquete, y el nombre del paquete debe ser el mismo que el nombre del directorio donde reside.
Reglas de nombrado para archivos fuente
El nombre de los archivos fuente en Go generalmente sigue letras minúsculas y no contiene espacios ni caracteres especiales, por ejemplo hello_world.go
. El nombre del archivo fuente no necesita ser consistente con el nombre del paquete, pero las declaraciones de paquete en todos los archivos dentro del mismo paquete deben tener nombres de paquete consistentes.
Uso de comentarios en el programa
En el lenguaje Go, los comentarios vienen en dos formas: comentarios de una línea que comienzan con //
y comentarios de varias líneas que comienzan con /*
y terminan con */
. El compilador ignora el contenido de los comentarios.
// Esto es un comentario de una línea
/*
Esto es un comentario de varias líneas
que abarca varias
líneas.
*/
2 La función main y punto de entrada del programa
En un programa en Go, la función main
está diseñada especialmente como el punto de entrada del programa. El tiempo de ejecución de Go llama automáticamente a la función main
dentro del paquete principal para iniciar la ejecución del programa.
package main
import "fmt"
func main() {
fmt.Println("¡Hola, Mundo!")
}
La función main
no toma argumentos y no tiene valores de retorno. Después de la ejecución de la función main
, el programa termina automáticamente. Si se requiere un código de estado al salir del programa, se debe utilizar la función os.Exit
.
3 Compilación y ejecución del programa
Uso del comando go build
Ejecutar el comando go build
compilará el archivo de código fuente y generará un archivo ejecutable. En la terminal, navega hasta el directorio donde se encuentra el archivo fuente, y luego ingresa el siguiente comando:
go build hello_world.go
Al ejecutarse exitosamente, verás un archivo ejecutable llamado hello_world
(o hello_world.exe
en Windows) en el directorio actual.
Uso del comando go run
El comando go run
compila y ejecuta el programa en Go, lo que es muy conveniente para pruebas y desarrollo rápidos. Para ejecutar el programa Hola Mundo, puedes ingresar:
go run hello_world.go
Después de ejecutar este comando, deberías ver inmediatamente la salida "¡Hola, Mundo!" en la terminal.
4. Salida del programa
En un programa en Go, la función Println
proporcionada por el paquete fmt
se puede utilizar para mostrar información en la terminal. El siguiente es un ejemplo de código que muestra "¡Hola, Mundo!" en la terminal:
package main
import "fmt"
func main() {
fmt.Println("¡Hola, Mundo!") // Salida en la terminal
}
Después de ejecutar el programa, la salida se puede ver directamente en la terminal de línea de comandos. Además, se pueden lograr requisitos de salida más complejos utilizando el paquete log
o manipulando directamente el flujo de salida estándar os.Stdout
.
import "os"
os.Stdout.WriteString("¡Hola, Mundo!\n") // Manipular directamente el flujo de salida estándar
import "log"
log.Println("¡Hola, Mundo!") // Usar el paquete log para la salida, que incluye información de fecha y hora
Estos métodos básicos de salida son medios importantes de interactuar con los usuarios y se usan comúnmente para depurar programas y mostrar información crítica.