Aller au contenu principal

Le langage Go

Date de mise à jour :
Identifiant Offre Info : 14_AF_0000264429
Organisme responsable : PLB (ouvre dans un nouvel onglet)

Nouvelle recherche

Présentation de la formation

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…

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.

Programme de la formation

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…

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

Validation et sanction

Attestation de formation

Type de formation

Non certifiante

Niveau de sortie

Sans niveau spécifique

Durée, rythme, financement

Durée

En centre

35 h

Financement

Conventionnement
Non

Conditions d'accès

Public visé

  • Tout public

Niveau d'entrée

Sans niveau spécifique

Conditions spécifiques et prérequis

Avoir l'expérience d'au moins un langage de programmation est essentiel pour suivre ce stage dans de bonnes conditions.

Lieu de réalisation de l'action

Modalités d'enseignement

Formation mixte

Adresse

3-5 Rue Maurice Ravel
1er étage-
92300 Levallois-Perret

Responsable : PLB Consultant

Périodes prévisibles de déroulement des sessions

Début

Fin

Adresse d'inscription
PLB
92300 Levallois-Perret
État du recrutement
Ouvert
Modalités
Entrées / Sorties à dates fixes