Introduction à Go : par où commencer en 2025 : en pratique
Go (ou Golang) est un langage de programmation compilé, statiquement typé, développé chez Google. En 2025, il occupe solidement le créneau des microservices haute performance, des applications cloud et des outils DevOps. Si vous souhaitez commencer à étudier Go d'un point de vue pratique, ce guide vous mènera de l'installation à l'écriture de votre premier programme significatif.
Pourquoi Go ? Il combine la simplicité de Python avec les performances du C. Go est idéal pour créer des applications serveur fiables, des utilitaires réseau et des calculs parallèles grâce à la prise en charge intégrée des goroutines. Dans cet article, nous allons décomposer les concepts clés avec des exemples de code que vous pourrez exécuter immédiatement.
1. Installation et configuration de l'environnement
La première étape consiste à installer le compilateur Go. En 2025, la version stable actuelle est Go 1.22 ou 1.23. L'installation est simple :
- Windows : Téléchargez l'installateur MSI depuis le site officiel et exécutez-le.
- macOS : Utilisez Homebrew :
brew install go. - Linux : Téléchargez l'archive
.tar.gzet décompressez-la dans/usr/localou utilisez le gestionnaire de paquets (par exemple,sudo apt install golang-go).
Après l'installation, vérifiez la version dans le terminal :
go versionVous devriez voir quelque chose comme go version go1.22.0 linux/amd64. Créez maintenant un espace de travail (workspace). Dans Go, il est d'usage de stocker tous les projets dans un seul dossier. Créez un dossier go-projects et à l'intérieur, un dossier pour le premier projet :
mkdir -p ~/go-projects/hellocd ~/go-projects/helloInitialisez le module — c'est l'unité principale de gestion des dépendances :
go mod init helloCette commande créera un fichier go.mod qui suivra les dépendances de votre projet.
2. Syntaxe : variables, types et structures de contrôle
Go possède un système de types strict mais concis. Créons un fichier main.go et écrivons un exemple de base :
package main
import "fmt"
func main() { // Déclaration de variables var name string = "Go" var version int = 2025 isFast := true // déclaration courte (le type est déduit automatiquement)
fmt.Println("Bonjour,", name) fmt.Println("Version :", version) fmt.Println("Go est-il rapide ?", isFast)
// Opérateur conditionnel if version > 2024 { fmt.Println("C'est la version actuelle !") }
// Boucle for (la seule boucle en Go) for i := 0; i < 3; i++ { fmt.Printf("Itération %d", i) }}Points clés :
package main— indique qu'il s'agit d'un programme exécutable.import "fmt"— importation du package pour les entrées/sorties formatées.varet:=— deux façons de déclarer des variables.:=est utilisé uniquement à l'intérieur des fonctions.- Types :
string,int,bool,float64et autres.
Exécutez le programme avec la commande go run main.go. Vous devriez voir la sortie dans la console.
3. Fonctions et structures : la base de la modularité
Les fonctions en Go sont déclarées avec le mot-clé func. Elles peuvent retourner plusieurs valeurs — c'est l'une des fonctionnalités clés du langage. Les structures (struct) sont l'équivalent des classes en POO, mais sans héritage.
package main
import "fmt"
// Structure pour représenter un utilisateurtype User struct { Name string Age int}
// Fonction retournant plusieurs valeursfunc createUser(name string, age int) (User, error)