Comment créer un smart contract ethereum simplement.

nils cambreleng
4 min readDec 18, 2018

--

Vous voulez lancer créer votre propre cryptomonnaie basée sur la Blockchain ethereum ou développer une application décentralisée, communément appelé Dapp, alors ce tutoriel est fait pour vous.

Prérequis:

Il est important d’avoir connaissance de ce qu’est une Blockchain avant d’attaquer ce tutoriel, c’est pour ça que je vous recommande cette vidéo qui explique très bien la chose d’un point de vue technique.

Voici tout ce dont nous aurons besoin pour créer notre smart contract:

  1. Une Blockchain de développement
  2. Un contrat en Solidity
  3. Un outil pour tester notre contrat

Blockchain de développement

Etant donné que publier un smart contract sur la Blockchain ethereum coûte de l’argent, vous allez commencer par le publier sur une Blockchain gratuite où vous pouvez tester directement votre contrat. Plusieurs choix s’offre à vous:

  • Vous pouvez héberger votre propre Blockchain en local grâce à un logiciel extrêmement simple appelé Ganache.
  • Vous pouvez passer par une Blockchain de test public comme par exemple Ropsten, où l’ether n’a aucune valeur.

Un contract en Solidity

Solidity est un langage spécialement conçu pour écrire des smart contracts, c’est le plus utilisé pour les contrats ethereum. Encore une fois, pour développer votre contrat en solidity et le publier sur votre Blockchain de développement, plusieurs choix s’offrent à vous :

  • Soit vous passez par Remix, c’est un IDE dans le navigateur assez simple d’utilisation.
  • Soit vous installez Truffle, c’est un framework de développement ethereum basé sur Nodejs.

Un outil pour tester notre contract

Lorsque votre contract et écrit et publié sur la Blockchain, il faut pouvoir le tester. Si vous avez fait le choix d’utiliser Remix comme IDE, vous pourrez directement tester les fonctions de votre contrat dans ce dernier.

Sinon, vous pouvez utiliser la console de Truffle ou n’importe quel autre librairie pouvant se connecter à la Blockchain et interagir avec. Personnellement, j’utilise ce package que je trouve très simple d’utilisation.

Passons à la pratique:

Afin de rendre ce tutoriel le plus simple possible, on va partir sur les outils les plus simple -> Ganache + Remix.

  • Commencez par installer MetaMask, c’est une extension vachement pratique qui nous simplifiera le travail.
Lorsque vous le lancez, Ganache vous créer une Blockchain en local et 10 wallets possédant chacun 100 ethers
  • On va maintenant connecter Metamask à notre Blockchain sur Ganache.
Allez dans les paramètre de Metamask et copiez l’adresse du serveur RPC dans New Network. Metamask est maintenant connecté à votre Blockchain.
  • Pour déployer un contrat, il faut un compte avec de l’ether. Importez un des compte de Ganache avec de l’ether pour pouvoir déployer le contrat.
  • A côté, rendez vous sur Remix.
Interface de Remix
  • Nous allons coder notre premier smart contract, un simple “Hello World”.
  • Copiez ce code et coller dans Remix puis compilez le sur la fenêtre de droite.
  • Maintenant que le contrat est compilé, il faut le déployer sur la Blockchain. Pour se faire, allez sur l’onglet Run de Remix. L’IDE devrait se connecter tout seul à votre Blockchain local grâce à Metamask. Cliquez sur Deploy pour déployer votre contrat.
Metamask vous demande une confirmation de déploiement de contrat, confirmez. Vous verrez alors apparaître votre contrat tout en bas.
  • Vous pouvez tester la fonction renderHelloWorld du contrat en cliquant dessus, le résultat apparaît dans la console.
Le résultat de notre fonction renderHelloWorld.

Et voilà, vous avez créé votre premier smart contract !

Pour aller plus loin:

Maintenant que vous avez compris comment créer un smart contract ainsi que le déployer sur une Blockchain, vous pouvez :

Vous renseigner sur les possibilités du langage solidity

Solidity est le langage pour développer des smart contracts sur la machine virtuelle ethereum le plus utilisé et le plus apprécié des développeurs. C’est un langage assez proche du javascript, sa doc est disponible ici.

Essayer de créer un token ERC20

Cela revient un peu à créer votre propre cryptomonnaie mais basé sur la blockchain ethereum. Vous pouvez trouver un template de token ERC20 à éditer ici.

Développer une Dapp

Développer une Dapp, ce sont les applications décentralisées du futur 😎. Voici une petite liste non exhaustive de Dapp que je trouve personellement vraiment cools :

  • Dice2Win : une roulette décentralisée avec très peu de taxes.
  • CryptoKitties : Le tout premier jeu développé sur la Blockchain Ethereum.
  • Minds : Un réseau social décentralisé où l’on est rémunéré pour le contenu qu’on publie.

Si vous avez apprécié mon article, n’hésitez pas à mettre un petit clap, ça fait toujours plaisir 😊.

--

--