Structure des packages de langage Go
L'organisation des packages est un aspect fondamental des conventions de structuration du code de Go. Pour comprendre ses subtilités, analysons un exemple spécifique et explorons les questions suivantes :
Q1 : Un fichier package.go est-il requis pour chaque dossier de package ?
Contrairement à Croyance populaire, un fichier package.go n'est pas obligatoire pour chaque dossier de package. Lorsque plusieurs fichiers Go résident dans un seul répertoire, ils forment automatiquement un package.
Q2 : Importation de sous-packages dans un dossier de package
Pour incorporer des sous-packages (par exemple, rational. go, real.go) au sein d'un package (par exemple, des nombres), ne recourez pas à des importations relatives. Au lieu de cela, spécifiez le chemin complet du package (par exemple, "github.com/username/projectname/number").
Q3 : Syntaxe pour une définition de type dansnumbers/real.go
La syntaxe pour définir un type dans les nombres/real.go est :
package numbers type Real struct { Number float64 }
Cela déclare un type réel dans les nombres package.
Q4 : Accéder aux types à partir du package principal
L'intégration des types définis dans les sous-packages dans le package principal est simple. Par exemple, le package principal peut accéder au type Real défini dans real.go en utilisant :
package main import ( "fmt" "github.com/username/projectname/number" ) func main() { fmt.Println(number.Real{2.0}) }
En adhérant à ces conventions, les développeurs garantissent l'organisation et l'accessibilité du code dans les projets Go.
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!