Organisme de Formation aux technologies et métiers de L'informatique
google

Formation Développer avec le langage Go de Google

Développer pour exploiter au mieux la puissance des processeurs multi-coeurs

Informations générales

LNG050
4 jours (28h)
2 390 €HT
92 €HT (en option)

Objectifs

  • Connaître et maîtriser les concepts de base du langage
  • Disposer des connaissances nécessaires pour écrire des programmes simples en Go
  • Apprendre à mettre en oeuvre les mécanismes de programmation multi-thread

Public

  • Tout développeur souhaitant apprendre la programmation avec le langage Go

Prérequis

  • Connaissance d'un langage de programmation structuré

Programme de la formation

Développé par Google pour exploiter au mieux la puissance des processeurs multi-coeurs, le langage de programmation Go est au fil des années devenu un véritable langage de programmation. Et le fait que ses créateurs l'aient voulu simple, facile à comprendre et à adopter et particulièrement destiné à des développeurs inexpérimentés ne l'a pas empêché d'être choisi dans des projets de grande envergure. A titre d'exemple, c'est en Go que Docker, la plate-forme de containers la plus populaire et la plus utilisée a été développée. Reconnu facile d'accès, puissant et très portable, Go pourrait très rapidement voir sa popularité augmenter. A l'issue de cette formation très pratique, les participants disposeront des connaissances et compétences nécessaires pour écrire des programmes en Go.

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 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 : debuggoing de code avec GDB
  • Data Race Detector, Godoc pour la documentation, outils d'optimisation de code
plus d'infos

Méthode pédagogique

Les ateliers proposés pendant la formation permettront aux participants d'acquérir une première expérience concrète du développement avec le langage Go. Le partage de conseils et de bonnes pratiques de la part de formateurs disposant d'une riche expérience dans le domaine du développement.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 17/01/2023