Introduction à la bibliothèque standard Go
Au moment d'écrire cet article, la version de Go a atteint la 1.21, et cela fait déjà plus d'un an depuis la création de ce site.
La bibliothèque standard de Go est très riche (à l'exception des structures de données), avec des fonctionnalités puissantes et une API très conviviale pour les développeurs. Maîtriser la bibliothèque standard sera d'une grande aide pour le développement quotidien. Par exemple, vous pouvez développer un projet Web complet et indépendant en utilisant uniquement net/http, html/template, database/sql sans aucune dépendance externe.
Le contenu de la bibliothèque standard n'a pas été mis à jour car il y a vraiment trop de contenu. Voici donc un bref aperçu des bibliothèques standard couramment utilisées, afin que vous puissiez choisir celles qui vous intéressent. Les commentaires au niveau du package de chaque bibliothèque standard expliqueront en détail à quoi sert le package.
fmt, package pour gérer les entrées et sorties formatéeshtml, package pour les opérations de templates HTMLnet, package fournissant une série d'opérations réseau, très puissantflag, package pour l'analyse des arguments de ligne de commandereflect, package pour les opérations de réflexionlog, package de journalisation intégrésort, package pour les opérations de triregex, package pour les expressions régulièresimage, package pour les opérations sur les imagestime, package pour les opérations sur le tempsunicode, package pour les opérations sur le jeu de caractères Unicodeunsafe, fournissant des opérations de pointeur sans restriction de typesyscall, package d'appels système fourni par le système d'exploitationtesting, package de test, principalement utilisé pour écrire des testssync, package pour les opérations concurrentescontext, package de contextestrconv, package de conversion de chaînesstrings, package d'opérations sur les chaînesbytes, package d'opérations sur les tranches d'octetsmaps, package d'opérations sur les mapsslices, package d'opérations sur les tranchesio, définit une série d'interfaces IO de base, commeCloser,Writercouramment utilisés, ainsi que des fonctions IO de baseio/fs, définit une série d'interfaces de système de fichiers, une abstraction du système de fichiersos, package d'interaction avec le système d'exploitation, fournissant une série de fonctions concrètes, peut être simplement considéré comme l'implémentation concrète des deux précédentsos/signal, package de signaux du système d'exploitation, utilisé pour écouter les signaux du système d'exploitation, principalement pour implémenter l'arrêt gracieux des programmesos/exec, package de commandes du système d'exploitation, utilisé pour exécuter des commandes systèmeos/user, package d'utilisateurs du système d'exploitation, utilisé pour obtenir les informations des utilisateurs du systèmebufio, package de lecture/écriture IO avec tamponpath, package pour traiter les chemins séparés par des barres obliques, comme les URLpath/filepath, package pour traiter les chemins de fichiersmath, package d'opérations mathématiquesmath/bits, package d'opérations bit à bitmath/cmplx, package d'opérations sur les nombres complexes, fournit également des fonctions utilitaires trigonométriquesmath/rand, package de nombres pseudo-aléatoiresmath/big, package de calcul de haute précision pour les grands nombrescontainer/heap, implémentation du tas minimumcontainer/list, implémentation de la liste doublement chaînéecontainer/ring, implémentation de l'anneauarchive/zip, package d'archivage et de compression ziparchive/tar, package de fichiers d'archive tarcompress, package d'implémentation d'algorithmes de compression, comme gzip, flatedatabase/sql, package d'interaction avec les bases de donnéesencoding, package de traitement d'encodage, avec de nombreux sous-packages commejson,xml, et aussibase64crypto, package de traitement de chiffrement, avec de nombreux sous-packages comme sha1, rsa, etc.go/ast, package de mappage de l'arbre syntaxique abstrait du code source Gogo/parser, package pour analyser le code source Go en arbre syntaxique abstraitgo/importer, fournit l'accès à l'importateurgo/format, package de formatage du langage Goarena, fournit la fonctionnalité d'allocation et de libération manuelle de mémoire, en phase expérimentaleruntime, package d'opérations d'exécution, de nombreuses opérations en Go sont implémentées par ce package
