CONNAISSANCES PREALABLES
- Connaître au moins un langage de programmation
PROFIL DES STAGIAIRES
- Développeurs
OBJECTIFS
- A l’issue de la formation, le stagiaire sera capable créer des programmes avec le langage open source Go
- Plus précisément :
- Connaître les concepts de base du langage de programmation GO
- 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
METHODES PEDAGOGIQUES
- 6 à 12 personnes maximum par cours, 1 poste de travail par stagiaire
- 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 Blockchain
CONTENU DU COURS Blockchain
1 - JOUR 1 - MATIN / Introduction à Go
2 - Histoire et principes fondamentaux de Go (1h30)
- Pourquoi Go? Avantages pour la programmation blockchain
- Configuration de l’environnement de développement et outils essentiels
3 - Syntaxe de base et types de données (2h)7
- Structures de données, types et gestion des erreurs en Go
4 - JOUR 1 - APRES-MIDI / Fonctionnalités Avancées et Concurrency
5 - Programmation concurrente avec Go (2h15)
- Introduction aux goroutines et channels pour le traitement concurrent
6 - Utilisation de packages externes (1h15)
- Importation et utilisation de packages pour renforcer les fonctionnalités des applications blockchain
7 - JOUR 2 - MATIN / Programmation Orientée Objet et Testing
8 - Principes de la programmation orientée objet en Go (1h30)
- Interfaces, méthodes et encapsulation
9 - Écriture de tests en Go (2h)
- Utilisation de frameworks de test comme GoTest pour assurer la qualité du code
10 - JOUR 2 - APRES-MIDI / Construction de Projets Blockchain
11 - Développement de contrats intelligents en Go (2h15)
- Création de contrats intelligents utilisant Go et intégration avec Ethereum
12 - Projet d'application blockchain (1h15)
- Conception et début du développement d’une application blockchain complète en Go
13 - JOUR 3 - MATIN / Développement Avancé et Sécurité
14 - Techniques avancées de programmation en Go (1h30)
- Optimisation des performances et sécurité des applications
15 - Sécurité des applications blockchain en Go (2h)
- Meilleures pratiques pour sécuriser les applications blockchain
16 - JOUR 3 - APRES-MIDI / Finalisation du Projet et Évaluation
17 - Finalisation et tests du projet d'application blockchain (2h15)
- Finalisation du développement, tests et débogage
18 - Présentation des projets et feedback (1h15)
- Présentation des projets par les participants, évaluation par les pairs et par les formateurs