Aperçu du cours
Objectif de formation : Savoir développer et déployer à l’aide de Ethereum
Prérequis
- Avoir suivi les formations introductives à la Blockchain (« Blockchain – Comprendre son fonctionnement et ses enjeux » ou « Blockchain – L’essentiel pour son adoption ») ou avoir des connaissances équivalentes
- Disposer de notions en développement informatique et javascript
Objectifs pédagogiques
- Apprendre à utiliser les outils nécessaires pour développer des contrats intelligents
- Apprendre à écrire un code de smart contract sécurisé
- Comprendre ce qui se cache derrière la Token économie et développer son propre Token
- Coder et déployer un Smart Contract sur le réseau de test Etherum
- Coder et déployer sa première DApp (decentralized Application)
- Apprendre à déployer des nœuds Etherum
Public ciblé
- Développeurs, chefs de projets, DSI, ingénieurs étude et développement et toute personne voulant approfondir la Blockchain Ethereum et se lancer dans la conception et le développement d’applications décentralisées
Programme de formation
-
Rappels sur les concepts de base de la Blockchain
-
Histoire et origine (crise financière, problème de double dépense etc.)
-
Les ingrédients pour faire une bonne Blockchain (P2P, Nœuds, consensus, blocks, hash, cryptographie, minage,…)
-
Workflow d’une transaction Blockchain
-
Les bénéfices de la blockchain et les domaines d’application
-
-
Fondamentaux d'Ethereum et bases de l'architecture d'une application décentralisée
-
Introduction à la Blockchain Ethereum et aux smart contracts
-
Comprendre le fonctionnement de la Blockchain Ethereum (EVM, Ether, Gas etc.)
-
Comprendre les différents types de noeud (light node, full node…) et comment interagir avec la Blockchain Ethereum
-
Les principaux réseaux Ethereum (Mainnet, Testnets)
-
Architecture d’une application décentralisée et interaction avec les smart contracts (Web3.js)
-
Mettre en place sa propre blockchain Ethereum privée (initialiser un nœud, créer un réseau permissionné et émettre des transactions)
-
Travaux pratiques: explorer la Blockchain Ethereum et accéder aux frais de transactions d’Ethereum, comparaison avec d’autres Blockchains de crypto-monnaies, premier wallet Ethereum et transactions via Metamask, mettre en place sa propre blockchain Ethereum privée (simulation avec Ganache puis premiers noeuds privés)
-
-
Introduction au développement d'un Smart Contract sur Ethereum
-
Introduction au langage de développement de contrats intelligents : Solidity (syntaxe et notions de base)
-
Introduction aux outils de développement de contrats intelligents (Remix, Web3.js, Truffle, Ganache, Testnet)
-
Développer ses premiers smart-contracts et réaliser ses premiers tests unitaires
-
Des contrats intelligents aux Tokens… Il n’y a qu’un pas : introduction aux principaux standards Ethereum de Tokens (ERC20 et ERC721)
-
Minter et s’échanger des tokens
-
Travaux pratiques: premiers smart-contracts sur la Blockchain Ethereum avec solidty (hello world smart contract, registre de données, Minimum viable Token…), premiers tests unitaires de smart-contract avec Truffle
-
-
Introduction au développement et déploiement d'applications décentralisées sur Ethereum
-
Développement et déploiement d’une Dapp (Ganache et Testnet)
-
Introduction à la sécurisation d’une application décentralisée (DICP et sécurité des contrats intelligents)
-
L’écosystème des Dapp Ethereum : overview du top 10
-
Travaux pratiques: conception et mise en place d’applications décentralisées (gestion des diplômes, vote électronique), premiers scans de sécurité de contrats intelligents via MytHX
-
-
Les évolutions d'Ethereum et de son écosystème
-
L’écosystème Ethereum à la base des Dapps (gouvernance actuelle, les Blockchain privées, les grands éditeurs et fournisseurs etc.)
-
Ethereum 2.0 : enjeux et opportunités
-
Les évolutions de concepts Blockchain (hybride, sideChain, layers)
-
Travaux pratiques: QCM de validation des acquis
-