Objectifs de formation
A l'issue de cette formation, vous serez capable de :
- Reconnaître et utiliser les concepts de base du langage Go
- Ecrire des programmes simples en Go
- Mettre en oeuvre les mécanismes de programmation multi-thread.
Prérequis
Connaître un langage de programmation structurée.
Public concerné
Tout développeur souhaitant apprendre la programmation avec le langage Go.
Programme
Présentation
- Historique de Go
- Objectifs des fondateurs
- Positionnement par rapport aux autres langages
- Particularités techniques
- Programmation multi-threading
- Simplicité
- Aspects compilation et gestion de la mémoire
- Documentation de référence pour les développeurs
Premiers pas avec Go
- Prérequis système
- Outils
- Installation de l'environnement de développement
- Création d'un programme simple en Go : "Hello World"
Fondamentaux
- Notions de packages et d'imports
- Variables
- Types de base
- Conversion de types
- Constantes
- Instructions de contrôle (boucles, tests...)
- for
- if
- else
- switch
- defer
Exemple de travaux pratiques (à titre indicatif)
- Utilisation de boucles et fonctions
Autres types
- Pointeurs
- Structures
- Tableaux
- Notion de slices et de maps
Méthodes et interfaces
- Définition des méthodes en Go
- Les pointeurs et fonctions
- Définition des interfaces
- Implémentations
- Les types assertions et types switch
Programmation concurrente
- Présentation des goroutines
- Principe
- Exemple de fonctionnement
- Notion de channel
Exemple de travaux pratiques (à titre indicatif)
- Programmation sur une architecture multiprocesseurs
Compléments
- Quelques packages utiles
- json
- gobs
- reflect
- image
- image / draw
- Debugging de code avec GDB
- Data Race Detector
- Godoc pour la documentation
- Outils d'optimisation de code
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités, méthodes et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (blended-learning, e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour certains cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Modalités d’évaluation des acquis
- Analyse des résultats individuels produits par chaque participant lors des travaux pratiques, correction au fur et à mesure du déroulé de la formation
- Réalisation d'un test complet sur un projet global de fin de formation, et analyse par le consultant formateur
- Un QCM individuel d'évaluation des acquis est proposé en fin de chaque session
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Les détails de l'accueil des personnes en situation de handicap sont consultables sur la page Accueil et Handicap.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.