Installation et premiers pas
Installation de Go sur votre système (Windows, macOS, Linux)
Go est un langage multiplateforme et son installation est simple sur les principaux systèmes d’exploitation. Cette section détaille les étapes d’installation de Go sur Windows, macOS et Linux.
1. Installation sur Windows
L’installation de Go sur Windows suit un processus simple et accessible à tous les utilisateurs, qu’ils soient novices ou expérimentés. Cette section détaille chaque étape avec des explications approfondies pour garantir une installation correcte et fonctionnelle.
a. Télécharger Go
Le package d’installation de Go pour Windows est disponible sur le site officiel de Go. Il est conseillé de télécharger la version la plus récente afin de profiter des dernières fonctionnalités et corrections de bugs.
Ouvrez un navigateur web et rendez-vous sur la page de téléchargement de Go (https://go.dev/dl/).

Sélectionnez la version compatible avec votre architecture (généralement Windows 64-bit en .msi).
Attendez la fin du téléchargement avant de passer à l’installation.

b. Installer Go
Une fois le fichier .msi téléchargé, l’installation peut commencer en suivant ces étapes :
Double cliquez sur le fichier .msi pour lancer le programme d’installation.
Une interface graphique vous guidera tout au long de l’installation, en proposant les options suivantes :
-
Accepter les termes du contrat de licence.
-
Choisir le chemin d’installation (par défaut C:\Go).
-
Valider les paramètres et lancer l’installation.
Une fois le processus terminé, fermez l’assistant.
c. Vérifier l’installation
Après l’installation, il est essentiel de s’assurer que Go est correctement installé et accessible depuis le terminal.
Ouvrez un terminal : appuyez sur [Win] R, tapez cmd ou powershell, puis validez.
Vérifiez la version installée : exécutez la commande suivante :
go version
Cette commande...
Configurer les variables d’environnement (GOPATH, GOROOT)
Après l’installation de Go, il est essentiel de configurer correctement les variables d’environnement pour garantir un fonctionnement optimal du langage. Les principales variables à configurer sont GOPATH et GOROOT.
1. Comprendre GOPATH et GOROOT
Lorsqu’on travaille avec Go, il est essentiel de comprendre les variables d’environnement GOPATH et GOROOT. Ces deux variables influencent la manière dont Go gère les fichiers sources, les dépendances et les binaires.
a. GOROOT : le répertoire d’installation de Go
La variable GOROOT désigne le chemin où Go est installé sur le système. Ce répertoire contient l’exécutable go, les bibliothèques standard et d’autres fichiers nécessaires à l’exécution de Go.
Vérifier le GOROOT
Pour vérifier le chemin actuel de GOROOT, on peut exécuter la commande suivante :
go env GOROOT
Une sortie typique pourrait ressembler à ceci :
/usr/local/go
Si GOROOT est incorrect ou non défini, il peut être nécessaire de le configurer manuellement en ajoutant la ligne suivante au fichier ~/.bashrc ou ~/.zshrc :
export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH
b. GOPATH : l’espace de travail Go
Contrairement à GOROOT, la variable GOPATH désigne l’espace de travail personnel d’un développeur. C’est ici que seront stockés les projets, les dépendances téléchargées et les binaires compilés.
Organisation du GOPATH
Un espace de travail Go (GOPATH) suit une structure standard :
GOPATH/
|-- bin/ # Contient les binaires des programmes installés
|-- pkg/ # Contient les fichiers compilés
|-- src/ # Contient le code source des projets
Vérifier et configurer GOPATH
On peut consulter la valeur actuelle de GOPATH avec la commande :
go env GOPATH
Si la variable GOPATH n’est pas définie, il est possible de la configurer en ajoutant la ligne suivante au fichier de configuration du shell :
export GOPATH=$HOME/go
export PATH=$GOPATH/bin:$PATH
Ensuite, appliquez les modifications...
Votre premier programme avec go run
Une fois Go installé et configuré, il est temps d’écrire et d’exécuter votre premier programme. Go fournit une commande simple pour tester rapidement du code : go run.
1. Écrire un programme de base
Pour bien démarrer avec Go, il est important d’écrire un premier programme simple. Ce programme servira à valider que l’environnement est bien configuré et à comprendre les bases de la syntaxe Go.
a. Structure d’un programme Go
Un programme Go est structuré autour d’un fichier principal contenant le point d’entrée main(). Il peut importer des packages pour étendre ses fonctionnalités.
Créez un fichier main.go dans un nouveau dossier de travail :
mkdir -p $HOME/go/src/hello_world
cd $HOME/go/src/hello_world
Puis ouvrez un éditeur et écrivez le code suivant :
package main
import (
"fmt"
"time"
)
// Fonction principale du programme
func main() {
// Affichage d'un message de bienvenue
fmt.Println("Bienvenue dans votre premier programme Go !")
// Déclaration de variables
currentTime := time.Now() // Récupère l'heure actuelle
userName := "Utilisateur"
// Affichage d'informations complémentaires
fmt.Printf("Bonjour %s, nous sommes le %s.\n", userName,
currentTime.Format("02/01/2006 15:04:05"))
// Appel d'une fonction personnalisée
displayMessage("Ce programme fonctionne correctement.") }
// Fonction pour afficher...Structure d’un programme Go
L’outil go mod permet de gérer les dépendances et l’organisation des projets Go de manière efficace. Il facilite le suivi des modules et des versions des bibliothèques utilisées.
1. Initialiser un projet avec go mod
Lorsqu’on développe un projet en Go, il est essentiel d’organiser son code et de gérer ses dépendances de manière efficace. Le module Go (go mod) permet d’assurer une gestion structurée des dépendances et d’éviter les conflits de version.
a. Pourquoi utiliser go mod ?
Avant l’introduction des modules Go, la gestion des dépendances reposait sur le GOPATH, ce qui posait plusieurs limitations, notamment l’impossibilité d’utiliser plusieurs versions d’un même package dans différents projets. Avec go mod, chaque projet peut gérer ses propres dépendances de manière indépendante.
b. Création d’un projet avec go mod
Pour initialiser un projet avec go mod, suivez ces étapes :
Créez un dossier pour le projet.
mkdir my_project && cd my_project
Initialisez le module :
go mod init github.com/username/my_project
-
github.com/username/my_project est le chemin du module, généralement basé sur un dépôt distant.
-
Cette commande génère un fichier go.mod qui contient les informations du module.
Vérifiez le fichier go.mod. Après l’exécution de la commande précédente, un fichier go.mod est créé avec un contenu similaire à ceci :
module github.com/username/my_project
go 1.20
Ce fichier définit le module et la version de Go utilisée.
c. Ajouter des dépendances
Lorsqu’un projet utilise des bibliothèques externes, celles-ci doivent être ajoutées au module.
Pour ajouter une dépendance :
go get github.com/gin-gonic/gin
Cette commande télécharge le package et met à jour le fichier go.mod ainsi que go.sum.
Le fichier go.sum assure l’intégrité des versions des dépendances.
d. Mettre à jour et gérer les dépendances
Mettez à jour une dépendance spécifique :
go get -u github.com/gin-gonic/gin
Supprimez une dépendance...
Introduction aux commandes Go (go build, go test, go fmt)
Le langage Go fournit un ensemble d’outils en ligne de commande intégrés qui simplifient les étapes fondamentales du développement. Parmi les commandes les plus couramment utilisées, on retrouve go build pour la compilation, go test pour l’exécution des tests, et go fmt pour le formatage du code. Ces outils sont essentiels pour construire, valider et maintenir un code Go propre et fonctionnel.
1. Compilation avec go build
La commande go build constitue une étape essentielle du processus de développement d’une application Go. Elle permet de transformer le code source en un binaire exécutable, sans pour autant installer l’application dans l’environnement global. Cela s’avère particulièrement utile pour tester ou distribuer rapidement un programme de manière autonome.
a. Usage fondamental dans un projet local
Lorsque l’on travaille dans un répertoire contenant des fichiers .go, notamment un point d’entrée tel qu’un fichier main.go défini avec un package main, il devient possible de générer un exécutable local. Imaginons un fichier principal structuré de la manière suivante :
package main
import "fmt"
func main() {
fmt.Println("Démarrage de l'application...") // Affiche un
message de bienvenue
}
En se plaçant dans le dossier contenant ce fichier, on peut exécuter la commande :
go build
Cette instruction analyse l’ensemble du package courant. Si celui-ci inclut une fonction main, le compilateur générera un fichier binaire. Ce dernier prendra automatiquement le nom du dossier courant.
b. Compilation ciblée d’un fichier source
Il est possible de demander explicitement la compilation d’un fichier unique, ce qui peut être utile pour tester des scripts isolés ou des prototypes :
go build app_entry.go
Si le fichier contient une fonction main dans un package main, un exécutable sera produit. Ce binaire portera alors le nom app_entry (ou app_entry.exe sur Windows).
Une fois le fichier généré...