Passer au contenu principal
Change page

Réseaux de développement

Dernière modification: @gregpich(opens in a new tab), 8 décembre 2023

Quand vous construirez une application Ethereum avec des contrats intelligents, vous voudrez l'exécuter sur un réseau local pour vérifier son fonctionnement avant de la déployer.

De la même façon que vous exécuteriez un serveur local sur votre ordinateur pour du développement Web, vous pouvez utiliser un réseau de développement pour créer une occurrence de blockchain locale et tester votre application décentralisée (dApp). Ces réseaux de développement Ethereum fournissent des fonctionnalités permettant une itération beaucoup plus rapide qu'un réseau de test public (par exemple, vous n'avez pas à gérer l'acquisition d'ETH depuis le robinet d'un réseau de test).

Prérequis

Vous devrez comprendre les bases de la pile Ethereum et des réseaux Ethereum avant de vous plonger dans les réseaux de développement.

Qu'est-ce qu'un réseau de développement ?

Les réseaux de développement sont essentiellement des clients Ethereum (implémentations d'Ethereum) spécifiquement conçus pour le développement local.

Pourquoi ne pas juste exécuter un nœud Ethereum standard localement ?

Vous pourriez exécuter un nœud mais puisque les réseaux de développement sont conçus pour le développement, ils sont souvent fournis avec des fonctionnalités pratiques telles que :

  • Alimentation déterminée de votre blockchain locale avec des données (par exemple, des comptes avec des soldes d'ETH)
  • Production instantanée de blocs avec chaque transaction reçue, dans l'ordre et sans délai
  • Fonctionnalités de débogage et de logging améliorées

Outils disponibles

Remarque : La plupart des cadres de développement incluent un réseau de développement intégré. Nous recommandons de démarrer avec un cadre pour configurer votre environnement de développement local.

Ganache

Lance rapidement une blockchain Ethereum personnelle que vous pouvez utiliser pour exécuter des tests et des commandes, et inspecter l'état tout en contrôlant comment la chaîne opère.

Ganache fournit une interface (Ganache UI), ainsi qu'un outil en ligne de commande (ganache-cli). C'est un élément de la suite d'outils Truffle.

Réseau Hardhat

Un réseau Ethereum local conçu pour le développement. Il vous permet de déployer vos contrats, d'effectuer vos tests et de déboguer votre code.

Le réseau Hardhat est intégré avec Hardhat, un environnement de développement Ethereum pour les professionnels.

Chaînes phares locales

Certains clients de consensus disposent d'outils intégrés pour faire tourner les chaînes phares locales à des fins de test. Les instructions pour Lighthouse, Nimbus et Lodestar sont disponibles ici :

Chaînes publiques de test pour Ethereum

Il y a aussi deux implémentations de test publiques maintenues d'Ethereum : Goerli et Sepolia. Le réseau testnet recommandé avec support à long terme est Goerli, que tout le monde est libre de valider. Sepolia est une nouvelle chaîne plus petite et devrait également être maintenue dans un avenir proche, avec un ensemble de validateurs autorisés (ce qui signifie qu'il n'y a pas d'accès général aux nouveaux validateurs sur ce réseau de test). La chaîne Ropsten devrait être dépréciée au quatrième trimestre 2022, et la chaîne Rinkeby devrait être dépréciée aux T2/T3 2023.

Pack Ethereum de Kurtosis

Kurtosis est un système de construction d'environnements de test multi-conteneurs qui permet aux développeurs de créer localement des instances reproductibles de réseaux de blockchain.

Le pack Ethereum Kurtosis permet de mettre localement en place un réseau de test Ethereum paramétrable, prenant en charge plusieurs clients différents de la couche d'exécution et de la couche de consensus, ainsi qu'un nombre "n" de nœuds. Kurtosis gère harmonieusement toutes les cartographies de ports locaux et les connexions de services pour faciliter le prototypage et le test des dApp et des contrats intelligents.

Complément d'information

Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !

Cet article vous a été utile ?