Comment exécuter un projet Go avec plusieurs fichiers dans un seul package main ?
Bonjour ! Je viens de commencer à apprendre Go et j'ai rencontré un problème. J'ai un petit projet composé de plusieurs fichiers, tous situés dans le dossier `cmd` et déclarés comme `package main`. Voici la structure :
```
myproject/
cmd/
main.go
helpers.go
config.go
```
Dans `main.go`, j'appelle des fonctions depuis `helpers.go`, par exemple :
```go
// main.go
package main
func main() {
msg := getMessage()
fmt.Println(msg)
}
```
```go
// helpers.go
package main
func getMessage() string {
return "Hello from helpers!"
}
```
Quand j'essaie d'exécuter le projet avec la commande `go run cmd/main.go`, j'obtiens l'erreur :
```
# command-line-arguments
./main.go:6:14: undefined: getMessage
```
Je comprends que Go ne voit qu'un seul fichier. Comment exécuter correctement le projet pour que tous les fichiers du package main soient compilés ensemble ? Dois-je utiliser `go build` ou existe-t-il une autre méthode ? Je me demande aussi comment gérer un grand nombre de fichiers — est-ce une pratique normale en Go ?