paint-brush
Comment écrire et compiler votre code de contrat intelligent Solidity dans Remix : bases du développement dApppar@dansierrasam79
2,448 lectures
2,448 lectures

Comment écrire et compiler votre code de contrat intelligent Solidity dans Remix : bases du développement dApp

par Daniel Chakraborty6m2023/03/23
Read on Terminal Reader

Trop long; Pour lire

Le billet de blog de cette semaine présente le sujet des contrats intelligents, mais dans un langage vers lequel la plupart des développeurs Web trouveront peut-être une transition facile : nous parlons de Solidity. La plupart des développeurs de contrats intelligents commencent par Solidity et pour lequel, l'environnement de développement intégré Remix est le premier outil avec lequel ils commencent généralement leur voyage.
featured image - Comment écrire et compiler votre code de contrat intelligent Solidity dans Remix : bases du développement dApp
Daniel Chakraborty HackerNoon profile picture
0-item
1-item

Même si la notion de contrat intelligent remonte aux années 90, Ethereum a été la première plate-forme à réaliser son potentiel et à éliminer le besoin d'un tiers grâce à sa mise en œuvre.


Avec Ethereum sur le devant de la scène, le marché des contrats intelligents s'est développé de plus en plus et devrait atteindre une taille de marché de 8,3 milliards de dollars d'ici 2030 . Évidemment, les contrats intelligents étant favorisés dans les projets de plusieurs secteurs, il n'est pas surprenant que les développeurs de contrats intelligents soient bien payés, compte tenu de cette augmentation de la demande.


En parlant de cela, le billet de blog de cette semaine présente le sujet des contrats intelligents, mais dans un langage vers lequel la plupart des développeurs Web trouveront peut-être une transition facile : nous parlons de Solidity.

L'environnement de développement intégré Remix

Si vous souhaitez apprendre le développement de contrats intelligents, le choix idéal consiste à sélectionner un langage populaire, simple à apprendre et offrant un environnement de développement facilement accessible.


Pour cette raison, la plupart des développeurs de contrats intelligents commencent par Solidity et pour lequel, l'environnement de développement intégré Remix est le premier outil avec lequel ils commencent généralement leur parcours de développement web3 . Pour la plupart, ce sera la première fois qu'ils utiliseront un environnement de développement, mais cela se fait sans effort puisque l'IDE Remix peut être configuré dans n'importe lequel des navigateurs populaires.


L'IDE Remix - Écran par défaut


Au niveau de base, il est important de noter que chaque contrat intelligent est un fichier .sol en vertu du langage dans lequel il est écrit : Solidity. De plus, la compilation du contrat nécessite que vous sélectionniez la version que vous souhaitez utiliser. Ces deux tâches d'écriture et de compilation de votre contrat intelligent doivent être effectuées avant de déployer votre contrat intelligent sur un réseau test ou un réseau principal.


En parlant de cela, il est essentiel que vous testiez votre contrat intelligent sur un Testnet avant de le déployer sur le Mainnet. Lorsque vous utilisez Remix, vous pouvez utiliser le testnet Goerli ou Sepolia. Cependant, pour cela, vous devrez d'abord connecter votre portefeuille Web3 à Remix - de préférence, en utilisant le portefeuille Metamask.


Le portefeuille Metamask


Si vous n'avez aucune idée de ce qu'est un Testnet, considérez-le comme un environnement dans lequel vous pouvez exécuter votre contrat en utilisant de faux fonds tout en évaluant si votre contrat intelligent est prêt pour le monde réel grâce à des tests. En bref, il s'agit d'une simulation du fonctionnement du contrat intelligent avant son déploiement sur le réseau principal.


Enfin, vous devez comprendre que chaque contrat intelligent, une fois déployé, est identifié par une adresse unique. Bien sûr, vous pouvez transférer des fonds vers et depuis votre contrat intelligent au moyen de comptes d'utilisateurs factices disponibles dans Remix. En outre, vous devez également apprendre tout ce que vous pouvez sur le paiement des frais de gaz et sur la manière dont ils sont déduits de votre compte lorsque vous rédigez et exécutez également votre premier contrat intelligent.

Vos premiers pas dans l'utilisation de l'IDE Remix

Maintenant, si vous voulez écrire et compiler votre premier contrat intelligent à l'aide de l'IDE Remix, il y a quatre icônes dans le panneau d'icônes que vous devez apprendre à utiliser :


Le panneau d'icônes


Chacune de ces quatre icônes représente différentes fonctions d'utilisation de l'espace de travail :

  1. Explorateur de fichiers
  2. Rechercher dans les fichiers
  3. Compilateur de solidité
  4. Déployer et exécuter des transactions


La sélection de l'Explorateur de fichiers vous amène à l'espace de travail par défaut, comme indiqué ci-dessous :

L'espace de travail par défaut


Vous devriez pouvoir créer, modifier et supprimer des dossiers et des fichiers Solidity ici. Le téléchargement de fichiers sur votre espace de travail ainsi que son ajout à un Github sont des options également disponibles.


La deuxième icône du panneau est intitulée Rechercher dans les fichiers et vous permet de faire exactement cela. Dans ce cas, nous recherchons le terme de recherche "distributeur automatique", et pour lequel, les résultats apparaissent ci-dessous.


Rechercher dans les fichiers


En ce qui concerne la sélection de l'option du compilateur Solidity, nous sommes redirigés vers un écran, comme indiqué ci-dessous :

Compilateur de solidité


Ici, vous pouvez sélectionner la version du compilateur et le contrat que vous souhaitez compiler avant d'appuyer sur le bouton bleu, comme indiqué ci-dessus.


En ce qui concerne la dernière icône du panneau, à savoir Deploy & Run Transactions, nous expliquerons comment utiliser cette icône dans le prochain article de blog de cette série.

Travailler avec votre premier contrat Solidity

Désormais, un certain nombre de langages de contrats intelligents populaires ont une syntaxe similaire à JavaScript, Python et Rust - des langages déjà populaires parmi les développeurs expérimentés.


Pourtant, celui qui se démarque est Solidity car la plate-forme Ethereum continue d'embaucher des développeurs à un rythme régulier, il est donc préférable de commencer notre voyage par la mise en œuvre d'un contrat intelligent de distributeur automatique utilisant ce langage. Vous pouvez copier le code de contrat intelligent du distributeur automatique à partir de cette page Web Ethereum .


Connaissez-vous les distributeurs automatiques ?


Il faut souligner que le fonctionnement d'un distributeur automatique est très similaire au fonctionnement des contrats intelligents. En fait, les deux méthodes 'remplir' et 'acheter', comme vous pouvez le voir dans le contrat intelligent Vending Machine, reproduisent les actions que le propriétaire d'un distributeur automatique et ses acheteurs effectuent dans la vie réelle.


Maintenant, accédez à votre espace de travail en sélectionnant l'icône "Explorateur de fichiers". Ouvrez un nouveau fichier .sol à l'aide de l'icône Créer un nouveau fichier, comme illustré ci-dessous :


L'icône Créer un nouveau fichier


Maintenant, collez le code de contrat intelligent du distributeur automatique dans ce fichier avec le SPDX-License-Identifier, comme indiqué ci-dessous :

Le contrat intelligent « distributeur automatique »


Après cela, il est temps de compiler votre premier contrat intelligent dans Remix en fonction de la version du compilateur sélectionnée dans l'instruction "pragma". Bien sûr, le débogage des erreurs fera également partie de ce processus.

Compilation de votre premier contrat intelligent Solidity dans Remix

Maintenant, une fois que nous avons ajouté notre code de contrat intelligent à un fichier .sol dans notre espace de travail par défaut, l'étape suivante consiste à déboguer votre code. En raison de l'absence d'erreurs, vous compilerez le contrat intelligent avant de le déployer sur le Testnet.


Avant de commencer, le raccourci clavier Ctrl + S compilera votre contrat intelligent. Maintenant, si l'option Solidity Compiler dans le panneau d'icônes a une coche verte, votre code est prêt à être déployé !


Compilation réussie (avec coche verte)


Bien sûr, tout ne se passe pas comme prévu. Dans la plupart des cas, il y aura des erreurs que vous devrez trier avant de réussir votre tentative de compilation du code que vous avez écrit. L'icône Solidity Compiler ressemblera à ceci, où '1' indique le nombre d'erreurs dans votre code :


Compilation infructueuse (avec 1 erreur)


En parlant d'erreurs courantes, les débutants ont tendance à ne pas sélectionner la bonne version du compilateur qui correspond à celle choisie dans l'instruction pragma du contrat intelligent, comme indiqué ci-dessous :


Erreur dans l'instruction pragma


Pour résoudre ce problème, accédez au menu déroulant de l'option Solidity Compiler :

Modification du menu déroulant de la version du compilateur (avec des flèches bidirectionnelles)


Changez la version du compilateur en « 0.8.7+commit.e28d00a7 », pour obtenir le résultat suivant :

Passer à la version 0.8.7 comme dans l'instruction pragma


Une autre erreur courante consiste à faire des erreurs de syntaxe, comme celle impliquant le mappage « cupcakeBalances » :


Erreur de syntaxe : aucun mappage de ce type n'a été déclaré précédemment, n'est-ce pas ?


Si vous ne l'avez pas déjà remarqué, le point d'exclamation rouge entouré d'un encadré rouge indique l'instruction qui contient une erreur. Dans ce cas, une fois que vous avez corrigé la faute de frappe en ajoutant un "k" et en appuyant sur Ctrl + S, ce signe disparaît.


Après avoir corrigé la faute de frappe, l'erreur est résolue


Avec une résolution de ces deux erreurs simples, vous trouverez également une coche verte apparaissant avec l'icône Solidity Compiler. De toute évidence, vous avez réussi à compiler votre premier contrat intelligent.


Alors maintenant, il est temps de déployer votre contrat intelligent sur le Testnet, mais cela sera couvert dans un futur article de blog.


Cela dit, nous construisons un métaverse centré sur les développeurs pour que vous en appreniez plus sur le développement Web3 et que vous développiez vos compétences.


Inscrivez-vous pour rejoindre la liste blanche Lumos Metaverse pour un accès exclusif :