Outils pour utilisateurs

Outils du site


dev:go:tutoriels:demarrer_en_go

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

dev:go:tutoriels:demarrer_en_go [2023/08/01 16:33] – créée yoanndev:go:tutoriels:demarrer_en_go [2023/08/02 13:47] (Version actuelle) yoann
Ligne 7: Ligne 7:
   * L'installation de Go ;   * L'installation de Go ;
   * La création d'un programme simple de type "Hello World" ;   * La création d'un programme simple de type "Hello World" ;
-  * L'utilisation de la commande go pour executer le code ;+  * L'utilisation de la commande go pour exécuter le code ;
   * Usage de l'outil de gestion de paquetage Go pour trouver des paquetages a intégrer dans son code ;   * Usage de l'outil de gestion de paquetage Go pour trouver des paquetages a intégrer dans son code ;
   * L'appel de fonctions dans un module externe.   * L'appel de fonctions dans un module externe.
Ligne 37: Ligne 37:
 ==== Activer le suivi des dépendances ==== ==== Activer le suivi des dépendances ====
  
-Lorsque votre code importe des paquetages inclus dans d'autres modules, lvous gérez ces dépendances dans votre propre module. Ce module est définit par un fichier **go.mod** qui effectue un suivi des modules fournissant les paquetages. Le fichier **go.mod** demeure avec votre code et doit être inclus à votre outil de gestion de révision.+Votre code va pouvoir importer des paquetages (distribués via les modules). Vous devez gérer ces dépendances dans votre propre module. Ce module est définit par un fichier **go.mod** qui effectue un suivi des modules fournissant les paquetages. Le fichier **go.mod** demeure avec votre code et doit être inclus à votre outil de gestion de révision.
  
-Pour activer le suivi des dépendances pour votre code via la création du fichier go.mod, exécuter la commande **%%go mod init** avec en paramètre le nom du module dans lequel sera votre code: +Pour activer le suivi des dépendances pour votre code et la création du fichier go.mod, exécuter la commande **''go mod init''** avec en paramètre le chemin du module qui contiendra votre code: ici nous allons utiliser un chemin de module quelconque comme 'exemple/hello' 
 + 
 +<code bash> 
 +go mod init example/hello 
 +</code> 
 + 
 +Pour un développement en condition réelle, le chemin du module sera en général l'adresse du dépôt publiant le module. Si vous souhaitez que votre module soit accessible, son chemin doit être une localisation accessible par les outils Go. Pour plus de détails à ce sujet voir la [[https://go.dev/doc/modules/managing-dependencies#naming_module|nommage des modules en Go]]. 
 + 
 +On crée le fichier source hello.go avec le contenu proposé ci-dessous :
  
 <code go hello.go> <code go hello.go>
Ligne 51: Ligne 59:
 </code> </code>
  
 +Ce code minimaliste illustre quelques principes:
 +  * On déclare un paquetage "main". Un paquetage est moyen de grouper un ensemble de fonctions toutes définies dans un ensemble de fichiers appartenant à un même répertoire.
 +  * L'import du paquetage "fmt" qui contient un ensemble de fonctions de formatage du texte, incluant l'affichage dans une console. Ce paquetage fait parti de la [[https://pkg.go.dev/std|bibliothèque standard de Go]].
 +  * Définition d'une fonction "main" pour afficher un message dans la console. La fonction "main" est exécutée par défaut lorsque le paquetage "main" est exécuté par Go.
 +
 +Pour exécuter le code :
 +<code bash>
 +go run .
 +</code>
 +
 +==== Appeler le code d'un paquetage externe ====
 +
 +Quand votre programme a besoin d'une fonctionnalité qui a pu être mise en œuvre par un tiers, vous pouvez parcourir les paquetages à la recherche de fonctions que vous pourrez utiliser dans votre code.
 +
 +On peut modifier notre programme pour rendre le message affiché un peu plus intéressant en proposant une citation.
 +  * Ouvrir  [[https://pkg.go.dev/]] et saisir le mot clé "quote" ;
 +  * Parmi les résultat, séléctionner quote (rsc.io/quote/v4) ;
 +  * Dans la section Documentation, sous Index, notez la liste des fonctions disponibles pouvant être appelées dans votre code. Nous allons utiliser la fonction Go().
 +  * En haut de page, notez le paquetage "quote" distribué via le module "rsc.io/quote"
 +
 +On peut utiliser le site [[pkg.go.dev]] pour trouver les modules publiés contenant les paquetages groupant les fonctions appelables dans le code.
 +
 +<code go hello.go>
 +package main
 +
 +import "fmt"
 +
 +import "rsc.io/quote"
 +
 +func main() {
 +    fmt.Println(quote.Go())
 +}
 +</code>
 +
 +==== Mis a jour des modules requis ====
 +
 +Go ajoute le module "quote" en prérequis ainsi qu' un fichier ''go.sum'' pour authentifier le module.
 +
 +<code bash>
 +# MAJ des dépendances : télécharge le module quote nécessaire au programme
 +go mod tidy
 +
 +# Exécution le programme
 +go run .
 +</code>
 +
 +===== Écrire plus de Go =====
 +
 +Cette brève introduction a abordé quelques bases en Go. Pour écrire plus de code voir [[dev/go/tutoriels/ecrire_un_module_en_go|créer un module en Go]].
  
 ===== Références ===== ===== Références =====
dev/go/tutoriels/demarrer_en_go.1690907629.txt.gz · Dernière modification : 2023/08/01 16:33 de yoann