Structure des packages de langage Go : explication détaillée et meilleures pratiques
Lors du développement d'applications Go, la structuration efficace de vos packages est cruciale pour la maintenabilité, organisation du code et respect des conventions. Voici une exploration approfondie de la structure du package Go, répondant aux questions fréquemment posées.
Structure des dossiers et importations
L'exemple de structure de projet que vous avez fourni est généralement correct, avec le exception d'un dossier src manquant dans votre $GOPATH. La structure mise à jour devrait être :
$GOPATH/ src/ github.com/ username/ projectname/ main.go numbers/ rational.go real.go complex.go
Lors de l'importation de packages dans le package principal (main.go), utilisez les importations absolues. Dans votre exemple, l'instruction d'importation correcte serait :
import "github.com/username/projectname/numbers"
package.go File
Avoir un fichier package.go dans chaque le dossier du package n’est pas requis. Dans votre cas, il n'est pas nécessaire de créer des fichiers package.go pour le package numbers ou ses sous-packages (par exemple, rational.go, real. vas-y, complex.go).
Nom du package et structure des fichiers
Tous les fichiers d'un package doivent appartenir à ce package, ce qui signifie qu'ils doivent démarrer avec la déclaration package correspondante. Pour le package numbers, cela ressemblerait à :
// real.go package numbers type Real struct { Number float64 }
Dans votre package main, vous pouvez ensuite accéder au type Real en utilisant :
import "github.com/username/projectname/numbers" func main() { fmt.Println(numbers.Real{2.0}) }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!