Informatique Informatique
Référence formation : 4-GO-BASE - Durée : 3 jours

 
  • Objectifs
  • Pré-requis
  • Pédagogie
Connaître et maîtriser les concepts de base du langage GO.
Avoir une première expérience en programmation.

Méthodes pédagogiques

Présentation des concepts, démonstration, exécution, synthèse et exercices pratiques d'assimilation

Modalités pédagogiques

Présentiel - Distanciel - AFEST

Moyens pédagogiques

Formateur expert du domaine - 1 ordinateur, 1 support de cours version papier ou numérique, un bloc-note et un stylo par personne - vidéo projecteur - tableau blanc

Modalités d'évaluation

Positionnement préalable oral ou écrit - Evaluation formative tout au long de la formation - Evaluation sommative faite par le formateur ou à l'aide de la certification NULL

Public concerné

Salariés - Demandeur d'emploi - Reconversion professionnelle

Si vous êtes en situation de handicap, vous pouvez joindre notre référent Handicap. Voir notre fiche Accès correspondante.

Contenu pédagogique

Présentation

  • Historique de Go, objectifs des fondateurs, positionnement par rapport aux autres langages
  • Particularités techniques : programmation multithreading, simplicité
  • Aspects compilation et gestion de la mémoire
  • Documentation de référence pour les développeurs

Premiers pas en 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, les variables, types de base, conversion de types, constantes, ...
  • Instructions de contrôle (boucles, tests, etc ... : for, if, else, switch , defer)
  • Mise en pratique : exemples boucles et fonctions

Autres types

  • Pointeurs, structures, tableaux
  • Notion de slices et maps
  • Exemples et exercices de mise en oeuvre

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
  • Exercices de mise en pratique

Programmation concurrente

  • Présentation des goroutines : principe et exemple de fonctionnement
  • Notion de channel
  • Exemple de programmation sur une architecture multi-processeurs

Compléments

  • Quelques packages utiles : json, gobs, reflect, image, image/draw
  • Outils : debugging de code avec GDB
  • Data Race Detector, Godoc pour la documentations, outils d'optimisation de code