Maison >développement back-end >Golang >Quoi de neuf dans Golang Améliorations du langage, du compilateur et des outils

Quoi de neuf dans Golang Améliorations du langage, du compilateur et des outils

Susan Sarandon
Susan Sarandonoriginal
2024-12-26 21:39:11565parcourir

Lo nuevo en Golang Mejoras en el lenguaje, compilador y herramientas

Le 13 août 2024, l'équipe Go a publié Golang 1.23, une version qui apporte de nouvelles fonctionnalités et améliorations importantes axées sur l'efficacité, le compilateur et le langage en général. Je résume ici les points forts de cette mise à jour !

? Changements de langue

? Itérateurs dans les boucles for-range

Les boucles For-range prennent désormais en charge les fonctions d'itérateur avec les signatures suivantes :

  • func(func() booléen)
  • func(func(K) bool)
  • func(func(K, V) bool)

Cela facilite l'itération sur des collections personnalisées et offre une plus grande flexibilité lorsque vous travaillez avec vos propres structures de données.

? Alias ​​de type générique (expérimental)

La prise en charge préliminaire des alias de type générique est introduite. Bien qu'encore expérimentale et devant être activée manuellement, cette fonctionnalité promet de simplifier la réutilisation des types génériques au fur et à mesure de l'évolution du langage.

?️ Actualités dans les outils

? Télémétrie en option

Go 1.23 inclut un système de télémétrie en option qui collecte des statistiques d'utilisation et de crash du compilateur. Ces informations aideront l'équipe Go à améliorer les futures versions.

  • Activation : activer la télémétrie
  • Plus de détails : Documentation de télémétrie

?‍? Nouvelles options de commande go

De nouvelles options ont été ajoutées à la commande go qui faciliteront la gestion de projet :

  • go env -changed : Afficher uniquement les variables d'environnement modifiées.
  • go mod Tidy -diff : affiche les modifications nécessaires sous forme de diff sans modifier les fichiers.
  • go list -m -json : inclut des champs comme Sum et GoModSum pour gérer les dépendances.

⚡ Améliorations du compilateur et des performances

Le compilateur de Go 1.23 apporte des optimisations importantes :

  • Optimisation des variables locales : l'utilisation de la mémoire a été réduite grâce à des améliorations dans les espaces de pile qui se chevauchent.
  • Optimisation guidée du profil (PGO) : améliorez le temps de construction et l'efficacité globale dans les grands projets.

Ces améliorations accélèrent non seulement le processus de développement, mais optimisent également l'exécution des applications en production.

? Améliorations de l'exécution

Les timers (time.Timer et time.Ticker) ont été optimisés pour qu'ils soient récupérés plus rapidement par le garbage collector lorsqu'ils perdent des références. Cela améliore la gestion des ressources et l'efficacité de l'exécution.

? Mises à jour des bibliothèques standard

Plusieurs bibliothèques standards reçoivent des améliorations :

  • crypto/x509 : remplit désormais automatiquement le champ Certificate.Leaf lors du chargement des paires de clés, ce qui facilite l'utilisation des certificats.
  • Améliorations de go/types et os.

Ces mises à jour visent à améliorer la sécurité, les performances et l'expérience de développement avec Go.

?️ Compatibilité et exigences de plate-forme

Go 1.23 maintient une compatibilité ascendante, mais introduit des modifications mineures aux exigences de certaines plates-formes :

  • macOS : macOS 11 Big Sur ou supérieur est requis.
  • Linux : Il s'agit de la dernière version compatible avec le noyau 2.6.32 ; Les versions futures nécessiteront au moins le noyau 3.2.

? Conclusion

Go version 1.23 renforce l'engagement du langage en matière d'efficacité, de flexibilité et de performances. Les nouvelles fonctionnalités du compilateur, du runtime et des outils garantissent que Go reste un choix solide pour les développeurs du monde entier.

Mettez à jour vers Go 1.23 et essayez toutes ces nouvelles fonctionnalités ! ?

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn