Choisissez votre langue
Cours d'initiation à la programmation Go
Plus de 2 millions d'étudiants dans le monde

Cours d'initiation à la programmation Go

Passez de zéro à développeur Go confiant avec un programme de formation qui couvre tout, de la syntaxe et des types de données à la concurrence, aux services HTTP et au profilage des performances. Ce cours vous donne une expérience pratique avec les outils, les patrons et les paquets logiciels de la bibliothèque standard que les ingénieurs Go utilisent chaque jour. Que vous construisiez des outils CLI, des API REST ou des services à haut débit, vous aurez les compétences nécessaires pour livrer du code Go de qualité production.

Dedika pour les entreprises

Ce que vous allez apprendre:

  • Configurez un environnement de développement Go complet et maîtrisez la chaîne d'outils CLI de base.

  • Construisez des programmes modulaires et sûrs au niveau des types en utilisant les structures, les interfaces et les génériques de Go.

  • Concevez des systèmes concurrents avec des goroutines, des canaux et l'instruction select.

  • Implémentez une gestion robuste des erreurs, des tests unitaires et des benchmarks en suivant les bonnes pratiques de Go.

  • Construisez et testez des serveurs HTTP et des API RESTful à l'aide du paquet logiciel net/http.

  • Profilez et optimisez les applications Go pour l'efficacité du CPU et une faible surcharge mémoire.

Comment vous étudiez de façon pratique Cours d'initiation à la programmation Go

Comment vous pratiquez Cours d'initiation à la programmation Go

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 38 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Configuration de l'environnement Go et de la chaîne d'outils

  • Leçon 1 • Comprendre l'espace de travail Go

    Explique la disposition traditionnelle de l'espace de travail et la structure moderne de projet basée sur les modules. Relie les conventions de répertoires à la manière dont Go résout les paquets.

  • Leçon 2 • Choisir et configurer un éditeur

    Passe en revue les éditeurs et IDE populaires avec le support Go et configure les fonctionnalités du serveur de langage. Des outils productifs accélèrent l'apprentissage tout au long du cours.

  • Leçon 3 • Commandes CLI Go essentielles

    Présente les sous-commandes essentielles de la commande go utilisées quotidiennement. Les étudiants gagnent en confiance pour exécuter, compiler et tester du code depuis le terminal.

  • Leçon 4 • Installer Go sur votre système

    Couvre le téléchargement et l'installation de la distribution Go sur Windows, macOS et Linux. Fournit la base pour tous les exercices pratiques suivants.

Chapitre 2Voir les détails

Syntaxe Go et types de données de base

  • Leçon 1 • Variables, constantes et valeurs zéro

    Couvre les déclarations var, la syntaxe courte de variable et les constantes typées. Introduit la garantie de valeur zéro de Go comme fonctionnalité de sécurité.

  • Leçon 2 • Entrée et sortie formatées

    Enseigne les verbes du package fmt pour l'affichage et la lecture des entrées utilisateur. Relie la connaissance de la syntaxe au comportement visible du programme.

  • Leçon 3 • Conversions de type et iota

    Explique les règles de conversion de type explicite et l'énumérateur iota pour les constantes. Prévent les bogues courants de non-correspondance de type dès le début de l'apprentissage.

  • Leçon 4 • Structure de programme et paquets

    Examine l'anatomie d'un fichier source Go, y compris les déclarations de paquets et les importations. Établit les règles structurelles que tout programme Go doit suivre.

  • Leçon 5 • Types numériques, booléens et chaînes

    Détaille les tailles d'entiers, la précision en virgule flottante, les booléens et l'immuabilité des chaînes. Prépare les étudiants à choisir les types appropriés pour des données réelles.

Chapitre 3Voir les détails

Flux de contrôle et fonctions

  • Leçon 1 • Defer, Panic et Recover

    Introduit les appels différés pour le nettoyage et le mécanisme panic/recover pour le confinement des erreurs. Développe des habitudes sécurisées de gestion des ressources dès le début.

  • Leçon 2 • Fermetures et fonctions d'ordre supérieur

    Explore comment les fermetures capturent les variables et comment les fonctions acceptent ou retournent d'autres fonctions. Prépare les étudiants aux motifs fonctionnels utilisés dans les bibliothèques Go.

  • Leçon 3 • Boucles et itération

    Explique le mot-clé de boucle unique for de Go et ses trois formes. Relie les motifs d'itération à une utilisation ultérieure avec les tranches et les maps.

  • Leçon 4 • Définir et appeler des fonctions

    Enseigne les signatures de fonctions, les valeurs de retour multiples et les retours nommés. Établit les conventions de fonctions de Go utilisées tout au long du reste du cours.

  • Leçon 5 • Instructions conditionnelles

    Couvre if, else et l'instruction d'initialisation à l'intérieur des conditions if. Démontre la préférence de Go pour les retours précoces plutôt que l'imbrication profonde.

Chapitre 4Voir les détails

Types composites : Tableaux, tranches et maps

  • Leçon 1 • Tableaux : Collections à longueur fixe

    Définit la syntaxe des tableaux, la sémantique de valeur et les contraintes de taille. Contraste les tableaux avec les tranches pour motiver pourquoi les tranches dominent le code Go.

  • Leçon 2 • Maps : Stockage clé-valeur

    Explique la création de maps, les opérations CRUD et l'idiome virgule-ok. Les maps sont la structure de données associative principale dans les programmes Go.

  • Leçon 3 • Itération sur les collections avec Range

    Enseigne le mot-clé range sur les tranches, tableaux, chaînes et maps. Renforce l'itération Go idiomatique introduite dans le chapitre sur le flux de contrôle.

  • Leçon 4 • Tranches : Séquences dynamiques

    Couvre les éléments internes des tranches (pointeur, longueur, capacité) et les opérations courantes. La maîtrise des tranches est essentielle pour presque tous les programmes Go.

  • Leçon 5 • Manipulation de chaînes et d'octets

    Explore la conversion chaîne-vers-tranche-d'octets, le package strings et la gestion UTF-8. Fait le pont entre la connaissance des types composites et les tâches réelles de traitement de texte.

Chapitre 5Voir les détails

Pointeurs et gestion de la mémoire

  • Leçon 1 • Package unsafe et accès bas niveau

    Passe en revue unsafe.Pointer, Sizeof et Alignof pour les tâches au niveau système. Met l'accent sur quand et pourquoi éviter unsafe dans le code d'application.

  • Leçon 2 • Ramasse-miettes de Go

    Décrit le GC à trois couleurs de type marquage-et-balayage, le réglage de GOGC et les pauses du GC. Les étudiants apprennent à profiler et à réduire la pression du GC dans les programmes de production.

  • Leçon 3 • Allocation sur la pile vs. sur le tas

    Explique comment le compilateur décide où vivent les variables en utilisant l'analyse d'échappement. Comprendre l'allocation aide les étudiants à écrire du code à faible latence et compatible avec le GC.

  • Leçon 4 • Principes fondamentaux des pointeurs

    Introduit les opérateurs d'adresse et de déréférencement, les pointeurs nil et l'absence d'arithmétique des pointeurs. Construit un modèle mental pour une utilisation sûre des pointeurs en Go.

Chapitre 6Voir les détails

Structures, méthodes et interfaces

  • Leçon 1 • Définir et utiliser des structures

    Couvre la déclaration de structure, l'accès aux champs, l'incorporation et les structures anonymes. Les structures sont le mécanisme principal de Go pour regrouper des données connexes.

  • Leçon 2 • Composition plutôt qu'héritage

    Démontre comment l'incorporation de structures et d'interfaces remplace l'héritage classique. Les étudiants conçoivent des hiérarchies de types flexibles et maintenables sans sous-classement.

  • Leçon 3 • Interfaces courantes de la bibliothèque standard

    Passe en revue les interfaces io.Reader, io.Writer, fmt.Stringer et error. Leur implémentation déverrouille une intégration transparente avec la bibliothèque standard de Go.

  • Leçon 4 • Interfaces et implémentation implicite

    Explique la déclaration d'interface, la satisfaction implicite et la répartition polymorphe. Les interfaces sont la pierre angulaire du modèle d'extensibilité de Go.

  • Leçon 5 • Méthodes sur les types

    Enseigne comment attacher des méthodes à des types nommés en utilisant des récepteurs par valeur et par pointeur. Établit les règles de choix du récepteur qui affectent la mutation et les performances.

Chapitre 7Voir les détails

Concurrence avec les goroutines et les canaux

  • Leçon 1 • État partagé et package sync

    Introduit Mutex, RWMutex, Once et les opérations atomiques pour la concurrence en mémoire partagée. Complète les motifs basés sur les canaux pour les sections critiques en termes de performances.

  • Leçon 2 • Instruction Select et délais d'attente

    Enseigne le multiplexage des opérations de canal avec select et l'implémentation de délais d'attente. Permet des programmes concurrents réactifs qui gèrent plusieurs sources d'événements.

  • Leçon 3 • Motifs de concurrence courants

    Démontre les pools de travailleurs, les pipelines et les architectures d'éventail (fan-out/fan-in). Les étudiants appliquent les primitives à des conceptions de charges de travail concurrentes réelles.

  • Leçon 4 • Canaux : Tubes de communication typés

    Couvre les canaux non tamponnés et tamponnés, les types directionnels et la sémantique de fermeture. Les canaux sont l'outil principal de Go pour le partage sécurisé de données entre goroutines.

  • Leçon 5 • Goroutines et ordonnanceur Go

    Explique la création de goroutines, l'ordonnanceur M:N et GOMAXPROCS. Établit le modèle mental nécessaire pour raisonner sur l'exécution concurrente.

Chapitre 8Voir les détails

Gestion des erreurs, tests et modules

  • Leçon 1 • Tests unitaires avec le package testing

    Introduit les fonctions de test, les tests pilotés par des tableaux et les sous-tests. Les tests automatisés sont la principale porte de qualité pour les projets Go.

  • Leçon 2 • Gestion idiomatique des erreurs

    Couvre l'interface error, les erreurs sentinelles et les types d'erreur personnalisés. La gestion idiomatique des erreurs est centrale dans la philosophie de fiabilité de Go.

  • Leçon 3 • Package Context pour l'annulation

    Enseigne context.Background, WithCancel, WithTimeout et la propagation de valeurs. Le contexte est le mécanisme standard pour les délais et l'annulation à travers les limites des API.

  • Leçon 4 • Modules Go et gestion des dépendances

    Explique go.mod, go.sum, le versionnement et le proxy de module. Les constructions reproductibles dépendent d'une configuration correcte des modules.

  • Leçon 5 • Analyses comparatives et couverture de code

    Couvre les fonctions d'analyse comparative, les boucles b.N et les rapports de couverture. Les références de performance et les métriques de couverture guident les décisions d'optimisation et de qualité.

Certification

Votre certificat valide de réussite

Ce cours est fait pour vous :

  • Développeur Python ou JavaScript curieux des langages compilés à typage statique.

  • Ingénieur backend souhaitant une alternative plus rapide et plus efficace à sa pile courante.

  • Professionnel DevOps cherchant à écrire des outils personnalisés et des scripts d'automatisation en Go.

  • Étudiant en informatique désireux d'acquérir une réflexion au niveau système grâce à un langage moderne.

  • Développeur freelance visant à élargir ses offres de services avec des backend basés sur Go.

  • Personne en reconversion professionnelle venant d'un domaine non lié au logiciel qui a acquis les bases de la programmation.

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable en France ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail des cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF