Icône de l’application Apprendre Go: Cours Code

Apprendre Go: Cours Code

Éducation · Gratuit · iOS & Android · CoddyKit

Apprendre Go: Cours Code — Un tutoriel Golang avec compilateur, détecteur de conditions de course et katas quotidiens sur votre téléphone

Apprendre Go: Cours Code est un tutoriel Golang gratuit pour iOS et Android, destiné aux débutants comme aux développeurs en activité. Il intègre un compilateur et un éditeur Go qui exécutent votre code sur une véritable chaîne d’outils Go (une connexion Internet est nécessaire). Vérifiez-le avec gofmt, go vet et le détecteur de conditions de course, et parcourez 51 cours, de votre premier fmt.Println aux goroutines, aux API REST et à gRPC, avec un Mentor IA pour les notions qui vous échappent.

App Store — Télécharger gratuitementGoogle Play — Télécharger gratuitement
Prix
Gratuit, mise à niveau Pro
Plateformes
iOS et Android
Langues
22
Classification par âge
4+
Configuration requise
iOS 15.1 ou version ultérieure
Écran d’accueil du parcours d’apprentissage Go avec un bouton « Commencer la première leçon », un anneau d’objectif quotidien et une carte de demande de fonctionnalitéVue d’ensemble du cours Go Kickoff: Concepts & Setup, avec une barre de progression, un premier groupe de leçons gratuit et un bouton « Changer de cours »
51Cours, de A1 à C1
-raceLaboratoire de concurrence avec le détecteur de conditions de course
QuotidienUn nouveau kata chaque jour
Supprimez le mot-clé go et regardez le même travail prendre trois fois plus de temps.

C’est la première chose que l’application vous fait faire avec Go : exécuter trois tâches de 120 ms chacune, constater que le total reste largement inférieur à 360 ms, puis supprimer l’unique mot-clé qui les rendait concurrentes. Toute la promesse du langage tient dans ce mot, et l’application vous permet de le ressentir avant de vous l’expliquer.

Ce que c’est

Apprendre Go: Cours Code est une application gratuite pour iOS et Android consacrée à l’apprentissage de Go, le langage compilé qui se trouve derrière une grande partie des logiciels cloud et serveur actuels. Elle propose 51 cours et 203 leçons, classés du niveau débutant au niveau avancé, un éditeur de code qui exécute les programmes sur une véritable chaîne d’outils Go, un kata quotidien, un laboratoire de concurrence avec un véritable détecteur de conditions de course et un parcours guidé dans lequel vous créez votre propre cœur HTTP. Un Mentor IA répond aux questions sur n’importe quelle leçon.

Dans l’application

À quoi elle ressemble

Écran d’accueil du parcours d’apprentissage Go avec un bouton « Commencer la première leçon », un anneau d’objectif quotidien et une carte de demande de fonctionnalité
Parcours d’apprentissageL’écran d’accueil s’ouvre sur le parcours d’apprentissage, avec un bouton de démarrage, un objectif quotidien et un lien vers le Skill Hub.
Vue d’ensemble du cours Go Kickoff: Concepts & Setup, avec une barre de progression, un premier groupe de leçons gratuit et un bouton « Changer de cours »
Vue d’ensemble du coursLe premier cours, Go Kickoff: Concepts & Setup, est indiqué comme gratuit et se divise en trois courtes leçons.
Éditeur de code affichant un programme Go avec package main, import fmt et des appels à fmt.Println, à côté d’une leçon sur le premier programme
Éditeur de codeUne leçon intitulée Votre premier programme, avec l’éditeur de code ouvert sur un fichier package main et un bouton d’exécution.
Écran de chat AI avec des suggestions pour expliquer les concepts clés, donner des conseils, me faire passer un quiz et créer un parcours d’apprentissage
AI MentorQuatre suggestions lancent le chat : expliquer les concepts clés, donner des conseils, me faire passer un quiz ou créer un parcours.
Écran d’accueil en thème clair avec le parcours d’apprentissage, un objectif quotidien et le Skill Hub
Écran d’accueilLe même écran d’accueil en thème clair, avec l’objectif quotidien et le Skill Hub sous le cours actif.

Le cours

Ce que couvre le cours Go

51 cours et 203 leçons issus de la liste de cours de l’application, classés de A1 à C1 et allant du premier programme au profiling et au garbage collector.

  1. Bienvenue dans Go et les bases

    Ce qu’est Go et pourquoi Google l’a créé, puis les variables, les types et les valeurs nulles, les constantes et le contrôle de flux avec if, for et switch.

  2. Fonctions, slices et maps

    Les fonctions avec plusieurs valeurs de retour, defer et les paramètres variadiques, les tableaux, les slices et les maps, ainsi que les chaînes de caractères, le formatage avec fmt et le package time.

  3. Structs, pointeurs et interfaces

    Les structs et les méthodes, les récepteurs par valeur ou par pointeur, les pointeurs, les interfaces implicites et le duck typing, ainsi que l’embedding pour la composition.

  4. Erreurs, packages et bibliothèque standard

    La gestion explicite des erreurs avec errors.Is et errors.As, les packages et les modules, les entrées-sorties de fichiers et JSON, les expressions régulières, le tri et les entrées-sorties bufferisées.

  5. Goroutines, channels et synchronisation

    Les bases des goroutines et des channels, select et les patterns de channels, les mutex et le package sync, context pour l’annulation, ainsi que les pools de workers et les pipelines.

  6. HTTP, REST et bases de données

    Les serveurs et clients HTTP avec net/http, les API REST avec Gin, les patterns de middleware, database/sql avec sqlx et pgx, GORM et les WebSockets.

  7. Tests, outils et déploiement

    Les tests pilotés par une table et les sous-tests, les applications en ligne de commande avec Cobra, la configuration avec Viper, les logs structurés avec slog et les builds Docker multi-étapes.

  8. Go avancé

    Les generics avec les paramètres de type et les contraintes, le benchmarking et le profiling avec pprof, gRPC avec Protocol Buffers, la réflexion et le modèle mémoire.

Fonctionnement

Comment se déroule une session

Chaque leçon est une courte lecture suivie de code à exécuter : la notion et la pratique se déroulent ainsi au cours de la même session.

  1. Lisez une courte leçon

    Ouvrez un cours et suivez une seule leçon de quelques minutes, avec une théorie expliquée en termes simples et un petit exemple, comme le programme package main et fmt.Println de la toute première leçon.

  2. Exécutez-le sur une véritable chaîne d’outils Go

    L’éditeur envoie votre programme à un exécuteur Go et affiche le résultat. gofmt, go vet et le détecteur de conditions de course s’exécutent de la même manière : l’application a donc besoin d’une connexion lorsque vous appuyez sur Exécuter, et un programme qui plante affiche une explication de l’erreur en langage clair.

  3. Entraînez-vous sous un autre angle

    Après un sujet, répondez au quiz, résolvez le kata quotidien, progressez dans un casse-tête de concurrence ou demandez au Mentor IA de vous interroger. Chacune de ces activités aborde la même notion différemment, ce qui l’aide à rester en mémoire.

Contenu

Ce que l’application comprend

51

Cours, de A1 à C1

203 leçons réparties sur 51 cours, des bases de Go, des slices et des maps aux interfaces, à la gestion des erreurs, aux goroutines, à net/http, à Gin, à l’accès aux bases de données, au déploiement Docker, à gRPC et au garbage collector.

-race

Laboratoire de concurrence avec le détecteur de conditions de course

Six casse-têtes exécutables couvrent deux goroutines sur un même channel, une poignée de main sans buffer, une distribution avec un WaitGroup, un compteur qui perd des mises à jour, une map avec deux writers et un deadlock. Vous pouvez aussi exécuter votre propre code avec le détecteur de conditions de course, gratuitement et sans limite quotidienne.

Quotidien

Un nouveau kata chaque jour

Un exercice Go vérifié par rapport à une table de cas, y compris des cas cachés, avec une explication de référence ensuite. Le kata quotidien est gratuit pour tout le monde ; Pro donne accès à la bibliothèque complète, aux solutions de référence et aux explications.

Docteur

Go Doctor

Vérifiez si gofmt réécrirait votre fichier et appliquez-le, exécutez go vet pour obtenir ses résultats et, avec Pro, demandez à l’analyse d’échappement du compilateur pourquoi une valeur est allouée. Le formatage est illimité, et go vet est limité à trois exécutions par jour avec l’offre gratuite.

7 étapes

Créez votre propre cœur HTTP

Un parcours guidé dans lequel vous écrivez vous-même la requête, la réponse, les handlers sous forme de fonctions, le routage, les paramètres de chemin, le middleware et le JSON avec des erreurs enveloppées, une étape vérifiée à la fois.

IA

Mentor IA et entretien blanc

Demandez au Mentor IA de vous expliquer un concept, de vous proposer une feuille de route ou de vous interroger. Un entretien blanc pose cinq questions sur Go, au niveau junior, intermédiaire ou senior, et évalue vos réponses ; un entretien évalué par semaine est gratuit.

Révision

Go Recall et Go by Example

De courtes cartes « qu’est-ce que cela affiche ? » sur les pièges classiques, comme l’ordre de defer, les maps nil et le partage de mémoire par append, ainsi que des extraits exécutables de la bibliothèque standard que vous pouvez exécuter et modifier.

Contexte

Pourquoi apprendre Go pour le développement backend, et qu’est-ce qui le rend différent ?

Go est un langage à typage statique et compilé, créé chez Google, largement utilisé pour les services web, les outils en ligne de commande et les infrastructures cloud. Son intérêt pour le backend tient au fait que beaucoup de fonctionnalités sont intégrées : la concurrence fait partie du langage, la bibliothèque standard couvre la plupart des besoins d’un petit service et un programme se compile en un seul binaire, sans rien d’autre à installer. Le langage est volontairement compact, ce qui le rend rapide à lire, mais impose aux débutants d’assimiler tôt quelques habitudes inhabituelles.

Goroutines et channelsde la concurrence sans threads à gérer

Une goroutine est une fonction lancée avec le mot-clé go, et un channel est le canal utilisé par les goroutines pour transmettre des valeurs. Ensemble, ils remplacent la plupart de la gestion manuelle des threads, raison pour laquelle la concurrence est enseignée tôt au lieu d’être laissée aux sujets avancés.

Les erreurs sont des valeurspas d’exceptions

Une fonction Go qui peut échouer renvoie une erreur comme seconde valeur ordinaire, que l’appelant vérifie immédiatement. Cela demande plus de code qu’un bloc try, mais rend visible chaque chemin d’échec dans le code que vous lisez.

Interfaces implicitesduck typing, vérifié à la compilation

Un type satisfait une interface dès lors qu’il possède les bonnes méthodes ; rien n’est déclaré. Les packages restent ainsi faiblement couplés, mais c’est aussi là que se trouve une surprise classique de Go : une interface contenant un pointeur nil n’est pas elle-même nil.

Un seul binaire et une bibliothèque standard étenduepourquoi le déploiement est simple

Go compilé produit un seul exécutable, et des packages tels que net/http, encoding/json et database/sql sont fournis avec le langage. Un petit service n’a souvent besoin d’aucun framework tiers, ce qui explique notamment pourquoi les images Docker des programmes Go peuvent être légères.

Pour qui

À qui elle s’adresse — et à qui elle ne s’adresse pas

Cette application vous convient si vous

  • Vous cherchez un cours de Golang que vous pouvez suivre par petites sessions sur votre téléphone
  • Vous écrivez déjà dans un autre langage et voulez voir les goroutines et les channels s’exécuter réellement
  • Vous visez un poste backend ou cloud et voulez des questions d’entretien Go avec des retours notés
  • Vous apprenez mieux avec de petits exercices et des cartes sur les pièges courants qu’avec de longues vidéos
  • Vous voulez vérifier le formatage, les résultats de vet et les data races dans du code que vous avez écrit vous-même

Ce n’est pas le bon outil si vous

  • Vous devez exécuter des programmes qui importent net/http ou utilisent les generics dans le runner intégré à l’application, qui est un sandbox Go 1.13
  • Vous voulez exécuter du code sans connexion, car le runner fonctionne en ligne
  • Vous vous attendez à ce que tout soit gratuit : le premier cours, le kata quotidien et une utilisation quotidienne de AI Mentor sont gratuits, tandis que Pro débloque le reste
  • Vous devez créer et livrer un service volumineux composé de plusieurs packages, ce qui nécessite toujours un ordinateur portable et la toolchain complète

Questions

Foire aux questions

Quelle est la meilleure façon d’apprendre Golang sur un téléphone ?

Les courtes leçons accompagnées de code que vous exécutez réellement sont plus efficaces que la simple lecture, et Go récompense l’expérimentation, car ses meilleures fonctionnalités, les goroutines et le détecteur de races, sont comportementales. Apprendre Go: Cours Code associe des leçons de quelques minutes à un éditeur, un kata quotidien et un Concurrency Lab. L’application est gratuite au démarrage sur iOS et Android, avec 51 cours classés du niveau débutant au niveau avancé.

Pouvez-vous compiler et exécuter du code Go sur votre téléphone ?

Oui, avec une connexion. Apprendre Go: Cours Code envoie votre programme à un runner Go et affiche le résultat, et ce même runner fournit gofmt, go vet et le détecteur de races. Le code n’est pas exécuté directement sur le téléphone : vous devez donc être en ligne lorsque vous appuyez sur Exécuter, et le runner impose des limites, comme une faible quantité de mémoire disponible et une taille maximale de binaire.

Le runner intégré à l’application prend-il en charge les generics ?

Pas pour le moment. Le runner de Apprendre Go: Cours Code utilise Go 1.13, tandis que les generics sont arrivés avec Go 1.18. Un programme utilisant des paramètres de type ou le mot-clé any ne pourra donc pas y être compilé. L’application l’explique en langage clair lorsque cela se produit et suggère la forme antérieure. Le cours sur les generics reste accessible sous forme de leçon.

Qu’est-ce que le détecteur de races de Go et comment l’application l’utilise-t-elle ?

Le détecteur de races signale lorsque deux goroutines accèdent à la même mémoire sans verrou entre elles, un bug qui ne se manifeste que dans certains cas. Dans Apprendre Go: Cours Code, le Concurrency Lab exécute sous le détecteur des exercices comme celui d’un compteur mis à jour par 200 goroutines, puis vous permet d’ajouter un mutex et de relancer le code. Vous pouvez également coller votre propre code utilisant des goroutines et l’exécuter sous le détecteur.

Qu’est-ce qu’un kata Go ?

Un kata est un petit exercice ciblé que vous résolvez en code, comme inverser correctement une chaîne contenant des caractères non-ASCII ou encapsuler une erreur pour que errors.Is puisse toujours la retrouver. Apprendre Go: Cours Code propose un nouveau kata quotidien, vérifie votre fonction à l’aide d’une table de cas comprenant des cas cachés, puis explique l’idiome utilisé. Le kata quotidien est gratuit pour tout le monde.

Dois-je avoir de l’expérience en programmation pour commencer ?

Non. Apprendre Go: Cours Code commence par expliquer ce qu’est Go et pourquoi il existe, puis aborde les variables, les types et le contrôle de flux. Chaque concept est expliqué en langage clair avant d’être mis en pratique. Une expérience dans un autre langage vous aidera à progresser plus vite dans les premiers cours, mais le premier cours est conçu pour les personnes qui partent de zéro.

Learn Go est-il gratuit ?

L’application est gratuite à télécharger. Le premier cours est gratuit, tout comme le kata quotidien, une utilisation quotidienne de AI Mentor, les vérifications gofmt illimitées, les exécutions illimitées avec le détecteur de races et quelques exécutions de go vet par jour. Pro débloque tous les cours, supprime les publicités, offre un accès illimité à AI Mentor et ouvre la bibliothèque de katas ainsi que l’analyse d’échappement.

Y a-t-il un certificat à la fin ?

Oui. La réussite de l’examen final vous donne un certificat de fin de cours. Il témoigne du travail que vous avez accompli et accompagne bien un petit projet que vous pouvez présenter lors d’un entretien, mais il ne s’agit pas d’une qualification universitaire accréditée.

Learn Go aide-t-il à préparer les entretiens Golang ?

Oui. L’entretien blanc vous pose cinq questions de niveau junior, intermédiaire ou senior, allant de la comparaison entre slices et tableaux à ce qu’une valeur d’interface contient au moment de l’exécution, puis évalue vos réponses et vous fournit un retour. Les cartes Go Recall vous entraînent sur les pièges courants, et les thèmes à améliorer repérés pendant un entretien sont ajoutés à votre paquet de révision. Un entretien évalué par semaine est gratuit.

Quelles plateformes et quels langages sont pris en charge ?

Apprendre Go: Cours Code fonctionne sur iOS via l’App Store et sur Android via Google Play, et son interface est disponible en 22 langues. L’application est classée 4+, ce qui signifie qu’aucun contenu n’est soumis à des restrictions d’âge.

Commencer

Écrivez votre première goroutine dès aujourd’hui

Gratuit pour commencer sur iOS et Android, en 22 langues.

App Store — Télécharger gratuitementGoogle Play — Télécharger gratuitement
Dernière vérification · Publié par CoddyKit · Politique de confidentialité
Disponible sur iOS et Android.