Choisissez votre langue
Cours d'introduction à la programmation Go
Plus de 2 millions d'apprenants dans le monde

Cours d'introduction à la programmation Go

Passez de zéro à développeur Go confiant grâce à un programme qui couvre tout, de la syntaxe et des types de données à la concurrence, aux services HTTP et au profilage du rendement. Ce cours vous offre une expérience pratique avec les outils, les patrons et les paquets de la bibliothèque logicielle standard que les véritables ingénieurs Go utilisent quotidiennement. 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 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.

  • Créez des programmes modulaires et type-safe à l'aide des structures, interfaces et génériques de Go.

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

  • Implémentez une gestion robuste des erreurs, des tests unitaires et des benchmarks selon les meilleures pratiques de Go.

  • Construisez et testez des serveurs HTTP et des API RESTful à l'aide du package 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'introduction à la programmation Go

Comment vous pratiquez Cours d'introduction à la programmation Go

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour entreprises, le cours inclut des exercices et des exemples adaptés à votre propre entreprise et à ses besoins spécifiques.

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 de projet moderne basée sur les modules. Établit le lien entre les conventions de répertoires et la façon dont Go résout les paquets.

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

    Passe en revue les éditeurs et IDE populaires avec prise en charge de Go et configure les fonctionnalités du serveur de langage. Un outillage productif accélère l'apprentissage tout au long du cours.

  • Leçon 3 • Commandes CLI de base de Go

    Présente les sous-commandes essentielles de la commande go utilisées quotidiennement. Les étudiants et étudiantes acquièrent de l'assurance 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 de tous les exercices pratiques subséquents.

Chapitre 2Voir les détails

Syntaxe de Go et types de données de base

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

    Couvre les déclarations var, la syntaxe abrégée des variables et les constantes typées. Présente 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 paquet fmt pour l'affichage et la lecture des entrées utilisateur. Établit le lien entre la connaissance de la syntaxe et le 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évient les bogues courants de non-concordance de type dès le début du parcours d'apprentissage.

  • Leçon 4 • Structure du programme et paquets

    Examine l'anatomie d'un fichier source Go, y compris les déclarations de paquet 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 des nombres à virgule flottante, les booléens et l'immuabilité des chaînes. Prépare les étudiants et étudiantes à choisir des 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

    Présente les appels différés pour le nettoyage et le mécanisme panic/recover pour le confinement des erreurs. Développe de bonnes habitudes de gestion sécuritaire des ressources dès le départ.

  • 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 et étudiantes aux patrons 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. Établit le lien entre les motifs d'itération et l'utilisation ultérieure avec les tranches et les dictionnaires.

  • 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 Go utilisées tout au long du cours.

  • Leçon 5 • Instructions conditionnelles

    Couvre if, else et l'instruction d'initialisation dans les 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 dictionnaires

  • Leçon 1 • Tableaux : collections de taille fixe

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

  • Leçon 2 • Dictionnaires : stockage clé-valeur

    Explique la création de dictionnaires, les opérations CRUD et l'idiome virgule-ok. Les dictionnaires 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 dictionnaires. Renforce l'itération idiomatique Go introduite dans le chapitre sur le flux de contrôle.

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

    Couvre les composantes 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 • Chaînes et manipulation d'octets

    Explore la conversion chaîne-tranche d'octets, le paquet 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 • Paquet unsafe et accès de bas niveau

    Passe en revue unsafe.Pointer, Sizeof et Alignof pour les tâches systèmes. 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 à balayage et marquage trichromique, le réglage de GOGC et les pauses du GC. Les étudiants et étudiantes 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ù les variables vivent en utilisant l'analyse d'évasion. Comprendre l'allocation aide les étudiants et étudiantes à écrire du code à faible latence et favorable au GC.

  • Leçon 4 • Notions fondamentales sur les pointeurs

    Présente 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écuritaire 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'imbrication 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'imbrication de structures et d'interfaces remplace l'héritage classique. Les étudiants et étudiantes 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 io.Reader, io.Writer, fmt.Stringer et l'interface error. Leur implémentation permet une intégration transparente avec la bibliothèque standard Go.

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

    Explique la déclaration d'interface, la satisfaction implicite et le dispatch 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 de valeur et de pointeur. Établit les règles de choix du récepteur qui affectent la mutation et le rendement.

Chapitre 7Voir les détails

Concurrence avec les goroutines et les canaux

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

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

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

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

  • Leçon 3 • Patrons de concurrence courants

    Démontre les pools de travailleurs, les pipelines et les architectures d'éventail de sortie (fan-out) et d'éventail d'entrée (fan-in). Les étudiants et étudiantes appliquent les primitives à des conceptions de charge de travail concurrente réelles.

  • Leçon 4 • Canaux : tuyaux 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écuritaire 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 • Test unitaire avec le paquet testing

    Présente les fonctions de test, les tests pilotés par tableau et les sous-tests. Les tests automatisés sont la première 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 au cœur de la philosophie de fiabilité de Go.

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

    Enseigne context.Background, WithCancel, WithTimeout et la propagation de valeurs. Context 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 builds reproductibles dépendent d'une configuration de module correcte.

  • Leçon 5 • Tests de performance et couverture de code

    Couvre les fonctions de test de performance, les boucles b.N et les rapports de couverture. Les bases de référence de rendement et les mesures de couverture guident les décisions d'optimisation et de qualité.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Développeuse ou développeur Python ou JavaScript curieux d'en apprendre davantage sur les langages compilés à typage statique.

  • Ingénieur ou ingénieure back-end à la recherche d'une alternative plus rapide et plus efficace à leur pile technologique actuelle.

  • Professionnel ou professionnelle DevOps souhaitant rédiger des outils personnalisés et des scripts d'automatisation en Go.

  • Étudiant ou étudiante en informatique désireux d'acquérir une réflexion axée sur les systèmes grâce à un langage moderne.

  • Développeur ou développeuse pigiste visant à élargir son offre de services avec des infrastructures back-end basées sur Go.

  • Personne en réorientation professionnelle provenant d'un domaine autre que le logiciel ayant acquis les notions de base en programmation.

Ce que nos apprenants disent

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 à 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 Numérique
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 il est présenté ainsi que la transcription des vidéos, 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 au Canada ?

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 fonctionne?

Cours PDF