Améliorer l'efficacité de la construction dans Go : solutions basées sur le cache
Le problème des temps de construction lents dans Go, en particulier pour les petits programmes basés sur CGO , a incité la communauté Go à explorer des solutions alternatives. Les commandes go build et go run ont toujours été sensiblement plus lentes que prévu, ce qui a conduit à un désir d'amélioration. mécanismes de mise en cache.
Une solution possible consiste à utiliser un Makefile avec une règle %. Cependant, comme le suggèrent les concepteurs du langage Go, la prise en charge intégrée de Go devrait éliminer le besoin d'outils externes tels que les Makefiles.
Heureusement, une amélioration significative est à venir. Go 1.10, dont la sortie est prévue au premier trimestre 2018, améliorera considérablement la vitesse de construction de go build et go install. La commande Go conservera désormais un cache et d'autres petites métadonnées des packages construits, enregistrés par défaut dans le répertoire de cache utilisateur défini par le système d'exploitation, mais peuvent être déplacés en définissant $GOCACHE.
Le principal impact de ce cache de build est que des commandes telles que "go test" et "go build" peuvent s'exécuter rapidement et toujours se construire de manière incrémentielle, en réutilisant les étapes de construction passées de manière aussi agressive que possible. Cela signifie que les utilisateurs n'ont plus besoin d'utiliser « go test -i » ou « go build -i » ou « go install » pour obtenir des builds incrémentielles rapides.
Il convient de noter que go install n'installe pas les dépendances des packages nommés. Vous pouvez en savoir plus sur ce que fait cette commande en lisant « go build build what ? »
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!