Avatar ·

¿Cómo crear y usar tus propios paquetes en Go?

¡Hola a todos! Acabo de empezar a aprender Go, antes escribía en Python. Allí podía simplemente crear un archivo e importarlo mediante `import my_file`. En Go estoy muy confundido con los paquetes. Tengo un proyecto con esta estructura: ``` myproject/ ├── main.go └── math/ └── helpers.go ``` En `helpers.go` quiero escribir una función simple de suma: ```go package math func Add(a int, b int) int { return a + b } ``` Y en `main.go` intento usarla: ```go package main import "myproject/math" func main() { sum := math.Add(2, 3) fmt.Println(sum) } ``` Pero el compilador da el error: `could not import "myproject/math"`. He probado diferentes rutas en import, ejecuté `go mod init`, pero sigue sin funcionar. ¿Qué estoy haciendo mal? ¿Cómo organizar correctamente el código en Go para poder usar mis propios paquetes? Explíquenlo, por favor, para principiantes, con ejemplos.