Ethereum a ouvert la blockchain à de nombreuses possibilités en implémentant un support de contrat intelligent sur son système. Ceci, à son tour,a ouvert Ethereum à une grande majorité de développeurs pour créer tout type d'application qu'il est possible d'exécuter sur la blockchain en développant des contrats intelligents dans des langages spécifiques à Ethereum comme Solidité , Serpent , et JE VAIS . Laissant de côté les langues, plusieurs Outils de développement Ethereum ont été développés au fil des ans pour rendre nos vies de développeurs moins lourdes.
Divers articles peuvent être trouvés sur le développement de Ethereum et Contrats intelligents mais il existe très peu d'articles qui traitent des outils qui rendent tout cela si transparent. J'ai donc décidé d'écrire un article qui donnait un aperçu des différents outils de développement Ethereum.
Outils de développement Ethereum
Pour notre propre commodité, j'ai classé les outils en quatre grandes catégories, à savoir:
- Environnement de développement intégré
1.1 Remix
1.2 EthFiddle - Nœuds de test locaux avec interface RPC
2.1 Ganache / TestRPC
2.2 Pythereum - Outils de développement basés sur la ligne de commande
3.1 Truffe
3.2 Embarquez
3.3 Dapp / Dapple - Analyseurs de code
4.1 La baignoire
4.2 Open-Zeppelin - Navigateurs
5.1 Brume
5.2 MetaMask
Commençons donc par notre liste d'outils de développement Ethereum en discutant des IDE.
Environnement de développement intégré
La première tâche d'un développeur dans son parcours de création d'une application consiste à écrire la logique de base, qui est généralement saisie dans un environnement de développement intégré. L'objectif général et le principal avantage d'un IDE estamélioration de la productivité des développeurs. Les IDE augmentent la productivité en réduisant le temps de configuration, en augmentant la vitesse des tâches de développement, en gardant les développeurs à jour et en standardisant le processus de développement. Quand on parle de solidité, le premier IDE qui me vient à l'esprit est Remix.
Remix
Anciennement connu sous le nom de Browser-Solidity, Remix est un IDE basé sur le Web spécifiquement destiné à la solidité et à l'environnement de développement Ethereum.
Avantages:
- Compilez le code avec les versions à jour du compilateur
- Déployez et exécutez un contrat intelligent sur des environnements personnalisés comme une machine virtuelle JavaScript ou un fournisseur Web3.js injecté.
- Vous permet d'importer du code depuis GitHub et Swarm
Les inconvénients:
- Difficile à comprendre pour les débutants
EthFiddle
En plus de Remix, il y en a un autrebasé sur un navigateurIDE c'est génial, mais à d'autres fins. Celui-ci s'appelle Ethfiddle et est idéal pour présenter du code. Alors que remix offre la flexibilité de tester notre code sur différents réseaux et environnements, ethfiddle consiste à partager votre code sur une présentation en raison de ses fonctionnalités d'intégration faciles.
Avantages:
- Fonctions d'intégration et de partage faciles
Les inconvénients:
- Lent et pas aussi riche en fonctionnalités que Remix
Pour compiler localement votre code de solidité, le compilateur SOLC peut être facilement installé à l'aide du gestionnaire de packages de nœuds. En dehors de cela, les éditeurs de texte open source comme Texte sublime et Atome ont un excellent support de paquet pour la coloration syntaxique de solidité.
Outils de développement Ethereum | Cours de développement Ethereum | Edureka
NŒUDS DE TEST AVEC INTERFACE RPC
Comme vous le savez tous maintenant, tout sur la blockchain est immuable par nature. Même les mises à jour des contrats intelligents ne peuvent pas être enregistrées à la même adresse et doivent être déployées à une nouvelle adresse en tant que nouvelle instance. Cela signifie également que les contrats intelligents ne peuvent pas être testés sur le réseau principal de la blockchain, car toute modification serait impossible à apporter une fois déployée sur le réseau principal. Par conséquent, les réseaux / nœuds de test font partie intégrante des outils de développement Etherum, car les développeurs ethereum utilisent des nœuds de test locaux pour tester l'interaction des contrats.
Parlons du réseau de test local le plus populaire
ganache
Le premier sur notre liste est Ganache-cli, qui est le nœud de test local le plus utilisé par les développeurs Ethereum. Ganache est une blockchain personnelle pour le développement Ethereum que vous pouvez utiliser pour déployer des contrats, développer vos applications et exécuter des tests. Il est disponible à la fois comme application de bureau et comme outil de ligne de commande (anciennement appelé TestRPC). Ganache est disponible pour Windows, Mac et Linux.
structures de données et algorithmes dans le tutoriel java
En utilisant la ganache, vous pouvez -
- Affichez rapidement l'état de tous les comptes, y compris leurs adresses, clés privées, transactions et soldes.
- Consultez la sortie du journal de la blockchain interne de Ganache, y compris les réponses et d'autres informations de débogage vitales.
- Configurez l'extraction avancée en un seul clic, en définissant les heures de blocage pour mieux répondre à vos besoins de développement.
- Examinez tous les blocages et transactions pour avoir un aperçu de ce qui se passe sous le capot.
Pythereum
Ensuite, sur la liste, nous avons Pythereum , qui est un outil de nœud de test local écrit en python. Il est beaucoup plus léger que la ganache, mais pas aussi riche en fonctionnalités.
Avec pythereum vous pouvez
- Créer une nouvelle blockchain de test avec un bloc Genesis
- Créez un nouvel état de test avec l'état de genèse transmis.
- Envoyez une transaction en utilisant la clé privée donnée à l'adresse donnée avec la valeur et les données données.
OUTILS DE GESTION DE DÉVELOPPEMENT BASÉS CLIENTS
Il existe trois principaux outils de développement Ethereum basés sur la ligne de commande, à savoir
- Truffe
- Embarquer
- Tacheter
Jetons un bref coup d'œil à chacun d'eux, un par un.
Truffe
Donc, le premier sur notre liste est Truffe , qui est également le plus populaire des trois outils répertoriés. Truffle est un environnement de développement, un cadre de test et un pipeline d'actifs pour Ethereum, visant à faciliter la vie de développeur Ethereum. La société «ConsenSYS» est responsable du développement et de la maintenance de Truffle.
Avec Truffle, vous obtenez:
- Compilation, liaison, déploiement et gestion binaire de contrats intelligents intégrés.
- Test de contrat automatisé avec Mocha et Chai.
- Pipeline de construction configurable avec prise en charge des processus de construction personnalisés.
- Cadre de déploiement et de migrations scriptable.
- Gestion de réseau pour le déploiement sur de nombreux réseaux publics et privés.
- Console interactive pour la communication directe du contrat.
- Reconstruction instantanée des actifs pendant le développement.
- Runner de script externe qui exécute des scripts dans un environnement Truffle.
Embarquer
Le prochain sur notre liste d'outils de développement Ethereum est Embarquer . Embark est un framework qui vous permet de développer et de déployer facilement des applications décentralisées (DApps) à l'aide d'applications html5 sans serveur. Embark s'intègre actuellement aux chaînes de blocs EVM (Ethereum), aux stockages décentralisés (IPFS) et aux plates-formes de communication décentralisées (Whisper et Orbit). Swarm est pris en charge pour le déploiement.
qu'est-ce qu'un scanner en java
Avec Embark, vous pouvez:
- Déployez automatiquement les contrats et rendez-les disponibles dans votre code JS. Embark surveille les changements, et si vous mettez à jour un contrat, Embark redéploiera automatiquement les contrats (si nécessaire) et le dapp
- Effectuer un développement piloté par les tests avec des contrats utilisant javascript
- Gardez une trace des contrats déployés ne sont déployés que lorsque cela est vraiment nécessaire
- Stockez et récupérez facilement des données sur le DApp via EmbarkJS. Y compris le téléchargement et la récupération de fichiers.
- Déployez l'application complète sur IPFS ou Swarm.
- Gérez facilement des systèmes complexes de contrats interdépendants.
Dapp
Dernier sur notre liste d'outils de développement Ethereum basés sur la ligne de commande que nous avons Tacheter . Actuellement, Dapple est obsolète au profit d'un nouvel outil appelé Dapp , qui a été réalisé par le même groupe de développeurs. Dapp est un outil de ligne de commande simple pour le développement de contrats intelligents. Il prend en charge ces cas d'utilisation courants:
- Gestion des packages
- Création de code source
- Test unitaire
- Déploiements de contrats simples
OUTILS D'ANALYSE DE CODE
Écrire du code propre et sécurisé pour un réseau décentralisé n'est pas une tâche facile. Il y a beaucoup à craindre du point de vue du stockage et de la sécurité, en particulier lorsqu'une majorité de votre code gère l'argent des autres. Tout retour en arrière défectueux dans l'état pourrait entraîner des pertes importantes. Pour éviter de telles situations, des analyseurs de code spéciaux ont été développés pour aider les développeurs à écrire du code propre et sécurisé.
Solium et Open-Zeppelin sont deux de ces outils qui viennent à l'esprit lorsque l'on parle des outils de développement Ethereum
Le bain
Solium est un linter de code de solidité qui vous permet d'écrire des contrats intelligents robustes et élégants. Solium fonctionne comme un interprète, où il vérifie constamment votre code pour les problèmes de style et de sécurité
Avec Solium, vous pouvez:
- Analysez votre code Solidity pour les problèmes de style et de sécurité et corrigez-les.
- Standardisez les pratiques de contrats intelligents dans votre organisation, intégrez-les à votre système de build et déployez en toute confiance
Open-Zeppelin
Open-Zeppelin,est un cadre de solidité pour la rédaction de contrats intelligents sécurisés. Utiliser open-zeppeldans les développeurs peuvent créer des applications, des protocoles et des organisations distribués en utilisant des modèles de sécurité contractuels communs, dans un langage de solidité. Ce qui est génial avec le zeppelin ouvert, c'est qu'il s'intègre parfaitement à Truffle, ce qui vous simplifie légèrement la vie.
Navigateurs
La blockchain Ethereum a besoin d'un navigateur qui répond spécialement à ses besoins afin que les informations concernant l'état, les reçus et les transactions puissent être visualisées. Discutons des navigateurs les plus populaires utilisés par les développeurs pour analyser l'interaction de leur application sur la blockchain
Brouillard
Mist Browser (anciennement Ethereum Dapp Browser) est l'interface utilisateur final d'Ethereum. C’est l’outil de choix pour la navigation et l’utilisation de Dapps et il est spécialement conçu pour les utilisateurs non techniques.
En utilisant de la brume, vous pouvez:
- Envoyer des transactions
- Recevoir des transactions
- Stocker l'éther
- Créez des portefeuilles multi-signatures
- Déployer des contrats intelligents
- Voir l'état de la blockchain
MetaMask
Bien que Metamask ne soit pas vraiment un «navigateur», il transforme Google Chrome en un navigateur Ethereum qui lui permet de récupérer des données de la blockchain et permet aux utilisateurs d'envoyer ou de recevoir des transactions signées en toute sécurité. L'extension injecte l'API Ethereum web3 dans le contexte javascript de chaque site Web, afin que les dapps puissent lire directement à partir de la blockchain. Metamask est facilement installable sur chrome , Opéra et Firefox comme extension de navigateur.
Bien qu'il existe de nombreux autres outils pour vous aider dans le développement d'applications décentralisées sur Ethereum, ce sont ceux qui m'ont le plus aidé. Même ainsi, je vous encourage vivement, les gens, à consulter les autres outils de développement Ethereum disponibles, qui aident nos vies en tant que développeurs.
Si vous souhaitez en savoir plus sur Ethereum Blockchain et faire carrière dans les technologies Blockchain, consultez notre qui vient avec une formation en direct animée par un instructeur et une expérience de projet réelle. Cette formation vous aidera à comprendre la Blockchain en profondeur et vous aidera à maîtriser le sujet.
Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires et nous vous répondrons dans les plus brefs délais.