CONNAISSANCES PREALABLES
- Connaissance d'un langage de programmation structuré.
PROFIL DES STAGIAIRES
- Tout développeur souhaitant apprendre la programmation avec le langage Go.
OBJECTIFS
- Connaître et maîtriser les concepts de base, savoir écrire des programmes simples en Go et mettre en oeuvre les mécanismes de programmation multi-thread
METHODES PEDAGOGIQUES
- Mise à disposition d’un poste de travail par participant
- Remise d’une documentation pédagogique papier ou numérique pendant le stage
- La formation est constituée d’apports théoriques, d’exercices pratiques et de réflexions
METHODES D'EVALUATION DES ACQUIS
- Auto-évaluation des acquis par le stagiaire via un questionnaire
- Attestation de fin de stage adressée avec la facture
FORMATEUR
Consultant-Formateur expert Développement Internet
CONTENU DU COURS Développement Internet
1 - Présentation
- Particularités techniques : programmation multi-threadind, simplicité
- Aspects compilation et gestion de la mémoire.
- Documentation de référence pour les développeurs.
- Historique de Go,objectifs des fondateurs, positionnement par rapport aux autres langages
2 - 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"
3 - 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,
4 - Autres types
- Pointeurs, structures, tableaux.Notion de slices et maps.Exemples et exercices de mise en oeuvre
5 - Methodes 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
6 - Programmation concurrente
- Présentation des goroutines : principe et exemple de fonctionnement.
- Notion de channel.
- Exemple de programmation sur une architecture multi-processeurs
7 - 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