C'est quoi Go ?
Go (aussi appelé Golang) est un langage de programmation créé par Google en 2009. Trois ingénieurs légendaires l'ont conçu : Robert Griesemer, Rob Pike et Ken Thompson — ce dernier étant aussi le co-créateur d'Unix et du langage C.
Leur frustration ? Les langages existants étaient soit rapides mais compliqués (C++), soit simples mais lents (Python). Go est né pour résoudre ce dilemme : la vitesse du C avec la simplicité de Python.
Go est un langage compilé — votre code est transformé en un exécutable natif, sans interpréteur. Résultat : des programmes qui démarrent en millisecondes et consomment peu de mémoire.
Pourquoi apprendre Go ?
Les outils qui font tourner l'infrastructure moderne sont écrits en Go :
- Docker — les conteneurs qui ont révolutionné le déploiement
- Kubernetes — l'orchestrateur de conteneurs utilisé par Netflix, Spotify, Airbnb
- Terraform — l'infrastructure as code
- Hugo — le générateur de sites statiques le plus rapide
Go est le langage du cloud. Si vous voulez construire des API rapides, des microservices, des outils CLI ou travailler dans le DevOps, Go est incontournable.
Et surtout : Go a 25 mots-clés. Vingt-cinq. Python en a 35, JavaScript en a 64, Java en a 67. Moins de mots-clés = moins de choses à apprendre = moins de bugs.
Votre premier programme
Tout programme Go commence par la même structure :
package main
import "fmt"
func main() {
fmt.Println("Bonjour le monde !")
}
Décryptons ligne par ligne :
package main— déclare que c'est un programme exécutable (pas une bibliothèque)import "fmt"— importe le packagefmt(format) pour afficher du textefunc main()— la fonction d'entrée, le point de départ de votre programmefmt.Println()— affiche une ligne dans le terminal
Sortie attendue :
Bonjour le monde !
go run et go build
Deux commandes essentielles pour travailler avec Go :
# Compiler et exécuter directement (développement)
go run main.go
# Compiler en un exécutable (production)
go build -o monprogramme main.go
./monprogramme
go run est pratique pendant le développement — il compile et exécute en une seule commande. go build crée un fichier exécutable autonome que vous pouvez distribuer — aucune installation de Go nécessaire sur la machine cible.
C'est une différence fondamentale avec Python ou JavaScript : un programme Go compilé est un fichier unique qui tourne partout sans dépendances.
What is Go?
Go (also called Golang) is a programming language created by Google in 2009. Three legendary engineers designed it: Robert Griesemer, Rob Pike, and Ken Thompson — the latter being the co-creator of Unix and the C language.
Their frustration? Existing languages were either fast but complicated (C++), or simple but slow (Python). Go was born to solve this dilemma: the speed of C with the simplicity of Python.
Go is a compiled language — your code is transformed into a native executable, no interpreter needed. Result: programs that start in milliseconds and use little memory.
Why learn Go?
The tools that power modern infrastructure are written in Go:
- Docker — the containers that revolutionized deployment
- Kubernetes — the container orchestrator used by Netflix, Spotify, Airbnb
- Terraform — infrastructure as code
- Hugo — the fastest static site generator
Go is the language of the cloud. If you want to build fast APIs, microservices, CLI tools, or work in DevOps, Go is essential.
And most importantly: Go has 25 keywords. Twenty-five. Python has 35, JavaScript has 64, Java has 67. Fewer keywords = less to learn = fewer bugs.
Your first program
Every Go program starts with the same structure:
package main
import "fmt"
func main() {
fmt.Println("Hello world!")
}
Let's break it down line by line:
package main— declares this is an executable program (not a library)import "fmt"— imports thefmt(format) package to display textfunc main()— the entry function, the starting point of your programfmt.Println()— prints a line to the terminal
Expected output:
Hello world!
go run and go build
Two essential commands for working with Go:
# Compile and run directly (development)
go run main.go
# Compile to an executable (production)
go build -o myprogram main.go
./myprogram
go run is handy during development — it compiles and runs in one command. go build creates a standalone executable you can distribute — no Go installation needed on the target machine.
This is a fundamental difference from Python or JavaScript: a compiled Go program is a single file that runs anywhere with no dependencies.
Go ne s'exécute pas dans le navigateur. Utilisez le Go Playground officiel pour tester vos programmes :
Copiez ce prompt dans Claude ou ChatGPT :
Explique-moi les différences entre Go, Python et JavaScript. Pour chaque langage, donne un cas d'usage idéal et un programme Hello World.