0Pricing
Go Academy icon

Go Academy

GOBackendCloudSystemsWebBeginnerEnterpriseNetwork

Plongez dans la programmation Go pour créer des applications efficaces et scalables avec GO Academy.

🤖 Alimenté par l'IA📚 51 cours👥 100 000+ apprenants⭐ Note 4,9
Présentation du Cours

Go : Conçu pour la concurrence, pensé pour l'échelle

Go est un langage typé statiquement et compilé créé chez Google pour répondre aux exigences des systèmes à grande échelle — compilation rapide, concurrence intuitive, et une stdlib minimale mais vraiment adaptée à la production. Il alimente l'infrastructure chez Docker, Kubernetes, Cloudflare et Uber. Cette formation enseigne Go à partir des principes fondamentaux jusqu'au modèle de concurrence, aux APIs REST, aux services gRPC, et aux outils de performance que les ingénieurs utilisent en production.

Ce que vous apprendrez

Vous commencerez par le système de types de Go, les valeurs zéro et le contrôle de flux, puis progresserez à travers les slices, maps, structs, interfaces et les conventions de gestion d'erreurs qui rendent le code Go prévisible. La formation couvre le package sync, les goroutines, les channels et l'instruction select pour la programmation concurrente, ainsi que le package context pour l'annulation. Sur le plan pratique, vous construirez des serveurs et clients HTTP avec net/http, écrirez des APIs REST avec Gin, ajouterez des middlewares, interrogerez des bases de données avec database/sql, sqlx, pgx et GORM, construirez des outils CLI avec Cobra, et déploierez des applications dans des conteneurs Docker. Les sujets avancés incluent le benchmarking avec pprof, les worker pools, les pipelines, gRPC, la réflexion, et le modèle mémoire de Go.

Le parcours d'apprentissage

Cinquante et un cours progressent de A1 à A2, B1, B2 et jusqu'à C1. Les cours de niveau A établissent les fondamentaux du langage — variables, contrôle de flux, fonctions, retours multiples, et les types de collection essentiels. B1 approfondit le modèle avec les structs, pointeurs, interfaces, packages, la stdlib, et l'I/O de fichiers. B2 est le bloc le plus volumineux et couvre tout, des goroutines et channels jusqu'à HTTP, les tests, les génériques, l'accès aux bases de données, les APIs REST avec Gin, le déploiement Docker, le logging structuré avec slog, les WebSockets et les cron jobs. C1 conclut avec du matériel prêt pour la production : benchmarking et profilage avec pprof, worker pools et pipelines, motifs de concurrence avancés, gRPC avec Go, le package reflect, un système de plugins, et le modèle mémoire de Go et le garbage collector.

Comment ça fonctionne

Chaque cours est divisé en leçons courtes et ciblées que vous complétez dans l'éditeur de code intégré avec un retour en temps réel. Quand vous êtes bloqué, un tuteur IA est disponible inline pour expliquer le concept sans dévoiler la réponse — vous construisez ainsi une compréhension véritable plutôt que de copier des solutions.

Commencer →

Comment Tu Vas Apprendre

🎯
Leçons Interactives
Exercices de codage pratiques avec retours en temps réel
🤖
Tuteur IA
Obtiens une aide instantanée de notre IA quand tu es bloqué
💻
Éditeur Intégré
Écris et exécute du code directement dans ton navigateur
🏆
Certificat
Obtiens un certificat en complétant le cours
Programme

51 Cours

Tous les cours du parcours d'apprentissage Go Academy.

01

Bienvenue dans Go

A13 leçons

Découvrez ce qu’est Go, pourquoi Google l’a créé et pourquoi il fait fonctionner certains des logiciels les plus importants au monde — expl…

02

Bases de Go : variables, types et valeurs zéro

A14 leçonsPRO

Découvrez le système de types de Go, les déclarations de variables avec var et :=, les valeurs zéro et les constantes, notamment iota.

03

Flux de contrôle : if, for, switch

A14 leçonsPRO

Maîtrisez les constructions de contrôle de Go, notamment if avec des instructions d’initialisation, la boucle for polyvalente et switch.

04

Fonctions et valeurs de retour multiples

A24 leçonsPRO

Comprenez les fonctions Go : signatures, paramètres variadiques, retours nommés, defer et fonctions de première classe.

05

Tableaux, tranches et maps

A24 leçonsPRO

Approfondissez les collections de Go : tableaux de taille fixe, tranches dynamiques et tables de hachage, avec des modes d’utilisation idio…

06

Chaînes Go et paquet strings

A24 leçonsPRO

Chaînes Go et paquet strings : runes ou octets, fonctions du paquet strings, entre autres

07

Formatage avec fmt et Stringer

A24 leçonsPRO

Formatage avec fmt et Stringer : verbes de Printf, Sprintf et Fprintf, entre autres

08

Temps en Go et paquet time

A24 leçonsPRO

Temps en Go et paquet time : temps et durée, formatage et analyse, entre autres

09

Fondamentaux des structures et méthodes en Go

B14 leçonsPRO

Modélisez des données avec des structures, associez-leur un comportement via des méthodes et comprenez la différence entre récepteurs par v…

10

Pointeurs en Go

B14 leçonsPRO

Comprenez les pointeurs Go : adresses mémoire, déréférencement, récepteurs par pointeur et situations où les utiliser.

11

Interfaces Go et typage structurel

B14 leçonsPRO

Découvrez le système d’interfaces implicites de Go, définissez et implémentez des interfaces et utilisez les assertions et les commutateurs…

12

Gestion des erreurs en Go

B14 leçonsPRO

Maîtrisez la gestion explicite des erreurs en Go : l’interface error, errors.Is/As, l’encapsulation des erreurs et les types d’erreurs pers…

13

Packages et modules Go

B14 leçonsPRO

Organisez votre code Go avec des packages, gérez les dépendances avec les modules Go et comprenez les règles de visibilité.

14

Incontournables de la bibliothèque standard Go

B14 leçonsPRO

Découvrez les packages les plus importants de la bibliothèque standard Go : fmt, strings, strconv, math, time et os.

15

Expressions régulières en Go

B14 leçonsPRO

Expressions régulières en Go : bases de regexp, recherche et extraction, entre autres

16

Tri en Go et paquet sort

B14 leçonsPRO

Tri en Go et paquet sort : tri de tranches, ordres de tri personnalisés, entre autres

17

Exploration approfondie des maps en Go

B14 leçonsPRO

Exploration approfondie des maps en Go : fonctionnement interne des maps, vérification de l’existence, entre autres

18

Balises de structures et validation en Go

B14 leçonsPRO

Balises de structures et validation en Go : rôle des balises de structures, balises JSON, entre autres

19

Formats d’encodage en Go

B14 leçonsPRO

Formats d’encodage en Go : rappel sur encoding/json, encoding/xml, entre autres

20

E/S de fichiers et utilisation de JSON

B14 leçonsPRO

Lisez et écrivez des fichiers avec os et bufio, encodez et décodez du JSON avec encoding/json et gérez des données CSV.

21

bufio et entrées-sorties efficaces en Go

B14 leçonsPRO

bufio et entrées-sorties efficaces en Go : lecteurs mis en mémoire tampon, Scanners, entre autres

22

Imbrication et composition en Go

B14 leçonsPRO

Imbrication et composition en Go : imbrication de structures, imbrication d’interfaces, entre autres

23

Fondamentaux des goroutines et des canaux

B24 leçonsPRO

Lancez des goroutines, communiquez via des canaux et comprenez le modèle de concurrence de Go avec des canaux tamponnés.

24

Instruction select et modèles de canaux

B24 leçonsPRO

Utilisez select pour communiquer avec plusieurs canaux et implémentez des modèles fan-in/fan-out, des délais d’attente et des pools de trav…

25

Mutex et package sync

B24 leçonsPRO

Protégez l’état partagé avec Mutex, RWMutex, Once et WaitGroup du package sync de Go.

26

Package context pour l’annulation

B24 leçonsPRO

Utilisez context.Context pour propager l’annulation, les échéances et les valeurs propres aux requêtes entre les goroutines.

27

Serveur HTTP avec net/http

B24 leçonsPRO

Créez des serveurs HTTP en Go avec net/http : gestionnaires, ServeMux, intergiciels et arrêt progressif.

28

Client HTTP et consommation d’API REST

B24 leçonsPRO

Consommez des API REST avec http.Client de Go : délais d’attente, en-têtes, authentification, analyse JSON et nouvelles tentatives.

29

Stratégies de test en Go

B24 leçonsPRO

Écrivez des tests efficaces avec le package testing de Go : tests pilotés par des tableaux, sous-tests, simulations et couverture de test.

30

Génériques Go : paramètres de type et contraintes

B24 leçonsPRO

Maîtrisez les génériques de Go 1.18 et des versions ultérieures : paramètres de type, contraintes, comparable et modèles génériques concret…

31

io.Reader et io.Writer en Go

B24 leçonsPRO

io.Reader et io.Writer en Go : interface Reader, interface Writer, entre autres

32

Modèle des options fonctionnelles en Go

B24 leçonsPRO

Modèle des options fonctionnelles en Go : problème posé par de nombreux paramètres, fonctions d’option, entre autres

33

Limitation du débit en Go

B24 leçonsPRO

Limitation du débit en Go : concept du seau à jetons, golang.org/x/time/rate, entre autres

34

Fondamentaux de database/sql en Go

B24 leçonsPRO

Fondamentaux de database/sql en Go : ouverture d’une connexion, interrogation de lignes, entre autres

35

Créer des applications CLI avec Cobra

B24 leçonsPRO

Créez des outils professionnels en ligne de commande avec Cobra : commandes, options, sous-commandes, configuration et distribution.

36

Accès aux bases de données avec sqlx et pgx

B24 leçonsPRO

Interrogez PostgreSQL depuis Go avec database/sql, sqlx pour mapper les résultats vers des structures et pgx pour des accès hautes performa…

37

Créer des API REST avec Gin

B24 leçonsPRO

Créez des API REST adaptées à la production avec le framework Gin : routage, liaison, validation et gestion des erreurs.

38

Modèles d’intergiciels en Go

B24 leçonsPRO

Concevez des intergiciels HTTP réutilisables : journalisation, limitation du débit, authentification, CORS et injection d’un ID de requête.

39

Déployer des applications Go avec Docker

B24 leçonsPRO

Mettez des binaires Go en conteneur avec des compilations Docker en plusieurs étapes, Docker Compose, la configuration d’environnement et l…

40

ORM GORM en Go

B24 leçonsPRO

ORM GORM en Go : modèles et AutoMigrate, opérations CRUD, entre autres

41

Configuration en Go avec Viper

B24 leçonsPRO

Configuration en Go avec Viper : lecture de fichiers de configuration, variables d’environnement, entre autres

42

Journalisation structurée en Go avec slog

B24 leçonsPRO

Journalisation structurée en Go avec slog : intérêt des journaux structurés, gestionnaires slog, entre autres

43

WebSockets en Go

B24 leçonsPRO

WebSockets en Go : bases de WebSocket, utilisation de gorilla/websocket, entre autres

44

Tâches Cron et planification en Go

B24 leçonsPRO

Tâches Cron et planification en Go : planification fondée sur le temps, bibliothèque robfig/cron, entre autres

45

Évaluation des performances et profilage pprof en Go

C14 leçonsPRO

Mesurez et optimisez votre code Go avec des évaluations de performances, des profils CPU et tas de pprof et des traces d’exécution.

46

Groupes de travailleurs et pipelines en Go

C14 leçonsPRO

Groupes de travailleurs et pipelines en Go : modèle de groupe de travailleurs, fan-out et fan-in, entre autres

47

Modèles avancés de concurrence

C14 leçonsPRO

Créez des systèmes concurrents adaptés à la production avec des pipelines, errgroup, des sémaphores et le modèle réacteur.

48

gRPC avec Go

C14 leçonsPRO

Définissez des services avec Protocol Buffers, générez du code Go et implémentez des services gRPC unaires et en flux continu.

49

Réflexion et package reflect

C14 leçonsPRO

Inspectez et manipulez les types à l’exécution avec reflect : Kind, Value, balises de structures et invocation dynamique.

50

Système de plugins en Go

C14 leçonsPRO

Créez des applications Go extensibles avec des packages de plugins, des interfaces et un chargement dynamique sous Linux.

51

Modèle mémoire et récupérateur de mémoire de Go

C14 leçonsPRO

Comprenez le modèle mémoire de Go, les règles happens-before, la pile et le tas, l’analyse d’échappement et le réglage du GC.

FAQ

Questions Fréquemment Posées

Le cours Go Academy est-il gratuit ?

Oui. Tu peux commencer le cours Go Academy gratuitement et compléter ses leçons interactives sans frais. Un abonnement PRO optionnel déverrouille des outils IA avancés et un certificat partageable.

Ai-je besoin d'expérience préalable pour apprendre GO ?

Non. Le cours commence par les fondamentaux et progresse graduellement vers des sujets plus avancés, tu peux donc commencer même sans expérience préalable en GO.

Comment vais-je apprendre GO sur CoddyKit ?

Tu apprends en faisant. Des leçons interactives courtes associent une explication claire avec un exercice de codage pratique qui s'exécute en temps réel, et un tuteur IA disponible 24h/24 offre une aide personnalisée dès que tu es bloqué.

Puis-je obtenir un certificat en complétant Go Academy ?

Oui. Les apprenants PRO peuvent passer un examen et obtenir un certificat de réussite partageable avec un code vérifiable pour le cours Go Academy.

Puis-je apprendre GO sur mon téléphone ?

Oui. CoddyKit est disponible sur le web et sous forme d'applications iOS et Android natives, tu peux donc apprendre GO sur n'importe quel appareil et ta progression se synchronise entre eux.

Commencez Go Academy Maintenant

Rejoignez des milliers d'apprenants maîtrisant la programmation avec des cours alimentés par l'IA.

Commencer Gratuitement →Parcourir Tous les Cours