Quand j'ai commencé à programmer en Go, j'avais déjà de bonnes bases en C, qui était mon premier langage de programmation. Cela m'a beaucoup aidé, car Go a beaucoup en commun avec C — de la simplicité à la performance. Moins de mots-clés, moins de complexité et une courbe d'apprentissage plus fluide. Mais ensuite est arrivée la partie qui m'a un peu perdu : packages, modules et autres go mod.
Je me souviens avoir pensé : "Je veux juste compiler un programme simple, pourquoi dois-je m'inquiéter des packages ?" Qu'en est-il des modules ? On dirait qu’ils sortent de nulle part et tout le monde dit qu’ils sont indispensables à la gestion des dépendances. Mais ne vous inquiétez pas, je vais tout expliquer de manière simple pour ceux qui programment déjà, mais qui n'ont pas encore maîtrisé ces choses dans Go.
Tout d'abord, le concept de packages dans Go est très similaire à ce que vous avez vu en C. Considérez les packages comme un moyen d'organiser et de réutiliser votre code. En C, lorsque vous séparez les fonctions en fichiers .h et .c, en Go, vous faites quelque chose de similaire, mais avec des packages. Chaque package regroupe des fonctionnalités et vous permet d'importer ce dont vous avez besoin dans d'autres parties du code.
Par exemple, au lieu de regrouper toutes les fonctions dans un seul fichier, vous pouvez les diviser en packages :
package main import "fmt" func main() { fmt.Println("Hello, Go!") }
Ici, fmt est un package de bibliothèque standard qui s'occupe du formatage des E/S. Lors de l'importation, vous accédez à ses fonctions. Et vous pouvez créer vos propres packages de la même manière, ce qui facilite la maintenance et l'organisation du code.
Maintenant, les modules se séparent. C'est là que les choses deviennent intéressantes. Si les packages sont comme des bibliothèques en C, les modules sont comme un « super package » qui gère tout cela. Ils permettent à votre projet de télécharger et d'utiliser des packages tiers sans soucis, de manière organisée et sécurisée.
go mod est la commande qui vous aide à configurer votre projet pour utiliser ces modules. Lorsque vous démarrez un nouveau projet avec go mod init, vous créez essentiellement une configuration que Go utilisera pour gérer les dépendances. Cela signifie qu'il téléchargera automatiquement les packages dont votre projet a besoin (sans avoir à les télécharger manuellement, comme vous le feriez en C).
Par exemple:
go mod init meu-projeto go get github.com/pacote/fantastico
Avec ces commandes, Go crée le fichier go.mod, qui stocke des informations sur les dépendances de votre projet. Ensuite, lorsque vous exécutez go build, Go télécharge tout ce dont il a besoin pour compiler, directement depuis Internet, sans que vous ayez à vous inquiéter.
Lorsque vous organisez votre code en packages et utilisez des modules pour gérer les dépendances, Go devient beaucoup plus efficace. Cela peut paraître déroutant au début (je ne l'ai pas compris tout de suite non plus), mais une fois que vous aurez compris, vous vous rendrez compte que les packages et les modules rendent votre code plus évolutif et plus propre. Tout se déroule mieux, surtout dans les grands projets.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3