Le langage Go

  • Levallois-Perret

  • À distance

Objectifs

Objectifs pédagogiques : 

Concrètement à l'issue de cette formation Langage Go, les participants auront acquis les connaissances et compétences nécessaires pour :


  • Choisir les bonnes signatures de méthodes et créer leurs propres structures

  • Créer des interfaces et les exposer à l'extérieur de leur paquet

  • Réaliser des tests unitaires et des tests de charge et générer des documents de couverture de code

  • Utiliser la concurrence et le parallélisme qu'offre Go

  • Concevoir des architectures projets.

Description

Les Concepts de base 

Introduction

Historique sur les origines de Go

Présentation des 25 mots clés de Go

Les types de collections 

Les tableaux

Les slices

Les maps

Les types et les structures 

Création d'alias de type

Création de structure de type

Travailler avec des constantes

Les fonctions et les méthodes 

Les paramètres de fonction

Création de méthodes sur une structure

Les choix entre valeur par pointeur ou par copie

Les interfaces 

Implémenter une interface existante

Créer sa propre interface

Composition d'interface

Créer son package et l'utiliser avec de la concurrence

“APIser” un package 

Exposition de structures et d'interfaces

Documentation du code source

Les tests unitaires 

Création d'un jeu de tests unitaires

Couverture du code et génération de documents

Création de benchmarks

La concurrence 

À quoi sert la concurrence

Parallélisme vs Concurrence

Travaux Pratiques : 

Utilisation du paquet avec de la concurrence

Utilisation de WaitGroupes et mutexes

Les fonctions atomiques

Création de canaux

Design patterns de la concurrence  

Les sémaphores

Les workers

Pub/Sub

Travaux Pratiques : 

Réalisation d'un worker

Créer son API web

Création d'un serveur 

Installation de Gin

Création de routes

Génération d'un webservice

Travaux Pratiques : 

Créer un server et le lancer

Templates HTML 

La composabilité

Les variables

Les logiques

Travaux Pratiques : 

Générer son template HTML

Connexion avec Postgres 

L'ORM existe-t-il en Go ?

État de l'art sur les libs

Création d'un CRUD

Travaux Pratiques : 

Utilisation de Gorm

Travaux Pratiques : 

Installation d'un module React

Création de microservices 

L'ère du post-monolithique

Création de Dockerfiles

Création de Dockercompose

Présentation de JWT

Présentation de Kubernetes

Travaux Pratiques : 

Installation et Utilisation de Docker, refactoring du projet

Optimiser son application

La mémoire dans Go 

Fonctionnement du GC

Utilisation du package unsafe

Travaux Pratique : 

Réalisation une opération sur pointeur avec unsafe

Considérations idiomatiques 

Convention de nomage

Utilisation de Vet

Travaux Pratiques : 

Tests vet sur son package, refactoring et documentation 

Debug 

Installation de Delve dans Atome

Utilisation de Delve

Profilage et optimisation 

Création de benchmarks

Profiling avec Pprof

Libération du GC 

Présentation d'un Pool

Conditions d'accès

Avoir l experience d au moins un langage de programmation est essentiel pour suivre ce stage dans de bonnes conditions.

Liste des sessions

8 juin 2026 > 12 juin 2026
7 septembre 2026 > 11 septembre 2026
7 décembre 2026 > 11 décembre 2026

PLB Consultant

  • 0143349094
  • plb@plb.fr

Centre de formation

3-5 Rue Maurice Ravel, 1er etage-, 92300 Levallois-Perret

Lieu de formation

3-5 Rue Maurice Ravel, 1er etage-, 92300 Levallois-Perret