ASCENT : 05. Go
Organisme
35740 PACEVoir toutes ses formationsAutres organismes proposant cette formation
Durée
Modalités
- Classe virtuelle
- Présentiel
Mise en situation
Prix
Public
Pré-requis
Objectifs pédagogiques
Apprendre à utiliser les bibliothèques et les packages couramment utilisés dans le langage GO
Acquérir des compétences en programmation concurrente et en gestion des goroutines
Maîtriser les principes de la programmation orientée objet en GO et savoir comment les appliquer dans des projets
Apprendre à écrire des tests unitaires et à effectuer des tests d'intégration
Concevoir, coder et déployer des contrats intelligents (smart contracts) en Go
Comprendre les bonnes pratiques de codage en GO
Explorer les fonctionnalités avancées de GO (la réflexion, les interfaces vides et la généricité)
Concevoir, mettre en œuvre et déployer une application Blockchain fonctionnelle
Programme détaillé
Introduction à Go et concepts de base (3 heures)Présentation du langage Go : historique, conception et avantages principauxStructure de base d'un programme Go : packages, variables, fonctions et types de donnéesTravaux pratiques : Configuration de l'environnement de développement GoTravaux pratiques : Écriture et exécution d'un simple programme Go pour imprimer des données et manipuler des variables
Utilisation des packages et bibliothèques en Go (3 heures)Introduction aux packages standards et tiers couramment utilisés en GoGestion des dépendances avec Go ModulesInstallation et utilisation de packages externes pour améliorer la fonctionnalité d'une application GoTravaux pratiques : Création d'un petit projet utilisant des bibliothèques pour gérer les entrées/sorties, le réseau, ou l'interface utilisateur
Programmation concurrente et Goroutines (4 heures)Concepts de concurrence en Go : goroutines et channelsPatterns de synchronisation et de communication entre goroutinesTravaux pratiques : Création de programmes exploitant la concurrence pour réaliser des tâches en parallèleTravaux pratiques : Utilisation des channels pour échanger des données entre goroutines de manière sécurisée
Programmation Orientée Objet en Go (3 heures)Principes de la programmation orientée objet en Go : struct, méthodes et interfacesUtilisation de l'héritage via l'embedding de structs Travaux pratiques : Développement d'une application utilisant des structs et des interfaces pour structurer les données et les comportements
Écriture de tests et tests d'intégration (4 heures)Introduction au framework de test en Go : création de tests unitaires et d'intégrationUtilisation de benchmarks et profils pour mesurer et optimiser les performancesTravaux pratiques : Écriture de tests pour une application Go existanteTravaux pratiques : Exécution de tests et interprétation des résultats pour améliorer la qualité du code
Fonctionnalités avancées de Go et développement d'applications Blockchain (4 heures)Exploration des fonctionnalités avancées de Go : réflexion, interfaces vides, et généricitéVue d'ensemble du développement de contrats intelligents et applications blockchain avec GoTravaux pratiques : Utilisation de la réflexion pour manipuler dynamiquement les objets en GoTravaux pratiques : Création et déploiement d'une application blockchain simple en utilisant Go