Lição 2

Comprendre les coûts du gaz

Bienvenue ! Maintenant que vous avez une compréhension fondamentale du gaz et que vous avez interagi avec un contrat intelligent de base, il est temps d'approfondir les subtilités des coûts du gaz. Cette leçon vous guidera à travers les opérations de gaz fondamentales dans Ethereum et vous apprendra à identifier les coûts de gaz des opérations dans l'IDE Remix.

Opérations de base sur Ethereum & Coût du gaz

Coûts opérationnels

Dans Ethereum, chaque opération a un coût en gaz associé. Voici quelques exemples de coûts typiques :

  • Coûts de base : Opérations de base telles que l'addition ou la définition d'une variable.
  • Coûts de mémoire : Stockage ou récupération de données en mémoire.
  • Coûts de stockage : Interaction avec l'état Ethereum (par exemple, mise à jour du stockage des contrats) - généralement le plus coûteux.

Il est important de les comprendre car de nombreuses techniques d'optimisation du gaz consistent à échanger des opérations plus coûteuses contre des opérations moins coûteuses.

Identifier les coûts du gaz dans Remix

Avec Remix, il devient très simple de discerner le gaz consommé par les opérations de notre contrat.

Procédure

  1. Analyse statique : Accédez à l'onglet Analyse dans Remix (représenté par une icône de microscope). Cet outil puissant vous permettra de découvrir les pièges potentiels et les possibilités d'optimisation de votre code.

  2. Déployer & Interagir : Après avoir déployé votre contrat (comme vous l'avez fait dans la leçon 1), chaque interaction affichera une estimation de gaz. Lorsque vous appelez une fonction, le gaz utilisé est affiché dans le volet inférieur droit.

  3. Volet Détails : Lors du déploiement ou de l'interaction avec une fonction, cliquez sur la flèche vers le bas dans le journal des transactions (en bas à droite). Le journal s'agrandit et affiche les coûts détaillés du gaz pour la transaction.

Pratique : Identifier les opérations lourdes en matière de gaz

Évaluons un exemple de contrat et ses opérations :

Solidity
// SPDX-License-Identifier : GPL-3.0
pragma solidity ^0.8.9 ;

contract GasDemo {
 uint256 public count ;
 mapping(address => uint256) public balances ;

 function increment() public {
        count += 1;
    }

    function updateBalance(uint256 newBalance) public {
        balances[msg.sender] = newBalance;
    }
}
  1. Déployez le contrat GasDemo sur Goerli Testnet via Remix.

  2. Interagissez plusieurs fois avec la fonction d'incrémentation.

  3. Vérifiez le gaz utilisé dans les détails de la transaction.

  4. Interagissez maintenant avec la fonction updateBalance en définissant différents soldes.

  5. Là encore, vérifiez le gaz utilisé.

Réfléchissez :

  • Quelle fonction consomme le plus de gaz et pourquoi ?(Conseil : vous avez affiché l'estimation de la consommation de gaz à proximité de chaque fonction)
  • Comment la mise à jour de la cartographie se compare-t-elle, en termes de gaz, à l'incrémentation d'un simple compteur ?

Récapitulation & Préparation de la leçon suivante

Vous venez d'approfondir votre compréhension des subtilités gazières des contrats intelligents Ethereum. En vous exerçant avec Remix, vous pouvez visualiser et comprendre l'impact des différentes opérations sur le gaz total d'une transaction. Dans la prochaine leçon, nous aborderons les techniques d'optimisation, où vous apprendrez comment rendre vos contrats plus économes en gaz.

Restez curieux et continuez à expérimenter !

Exclusão de responsabilidade
* O investimento em criptomoedas envolve riscos significativos. Prossiga com cuidado. O curso não pretende ser um conselho de investimento.
* O curso é criado pelo autor que se juntou ao Gate Learn. Qualquer opinião partilhada pelo autor não representa o Gate Learn.
Catálogo
Lição 2

Comprendre les coûts du gaz

Bienvenue ! Maintenant que vous avez une compréhension fondamentale du gaz et que vous avez interagi avec un contrat intelligent de base, il est temps d'approfondir les subtilités des coûts du gaz. Cette leçon vous guidera à travers les opérations de gaz fondamentales dans Ethereum et vous apprendra à identifier les coûts de gaz des opérations dans l'IDE Remix.

Opérations de base sur Ethereum & Coût du gaz

Coûts opérationnels

Dans Ethereum, chaque opération a un coût en gaz associé. Voici quelques exemples de coûts typiques :

  • Coûts de base : Opérations de base telles que l'addition ou la définition d'une variable.
  • Coûts de mémoire : Stockage ou récupération de données en mémoire.
  • Coûts de stockage : Interaction avec l'état Ethereum (par exemple, mise à jour du stockage des contrats) - généralement le plus coûteux.

Il est important de les comprendre car de nombreuses techniques d'optimisation du gaz consistent à échanger des opérations plus coûteuses contre des opérations moins coûteuses.

Identifier les coûts du gaz dans Remix

Avec Remix, il devient très simple de discerner le gaz consommé par les opérations de notre contrat.

Procédure

  1. Analyse statique : Accédez à l'onglet Analyse dans Remix (représenté par une icône de microscope). Cet outil puissant vous permettra de découvrir les pièges potentiels et les possibilités d'optimisation de votre code.

  2. Déployer & Interagir : Après avoir déployé votre contrat (comme vous l'avez fait dans la leçon 1), chaque interaction affichera une estimation de gaz. Lorsque vous appelez une fonction, le gaz utilisé est affiché dans le volet inférieur droit.

  3. Volet Détails : Lors du déploiement ou de l'interaction avec une fonction, cliquez sur la flèche vers le bas dans le journal des transactions (en bas à droite). Le journal s'agrandit et affiche les coûts détaillés du gaz pour la transaction.

Pratique : Identifier les opérations lourdes en matière de gaz

Évaluons un exemple de contrat et ses opérations :

Solidity
// SPDX-License-Identifier : GPL-3.0
pragma solidity ^0.8.9 ;

contract GasDemo {
 uint256 public count ;
 mapping(address => uint256) public balances ;

 function increment() public {
        count += 1;
    }

    function updateBalance(uint256 newBalance) public {
        balances[msg.sender] = newBalance;
    }
}
  1. Déployez le contrat GasDemo sur Goerli Testnet via Remix.

  2. Interagissez plusieurs fois avec la fonction d'incrémentation.

  3. Vérifiez le gaz utilisé dans les détails de la transaction.

  4. Interagissez maintenant avec la fonction updateBalance en définissant différents soldes.

  5. Là encore, vérifiez le gaz utilisé.

Réfléchissez :

  • Quelle fonction consomme le plus de gaz et pourquoi ?(Conseil : vous avez affiché l'estimation de la consommation de gaz à proximité de chaque fonction)
  • Comment la mise à jour de la cartographie se compare-t-elle, en termes de gaz, à l'incrémentation d'un simple compteur ?

Récapitulation & Préparation de la leçon suivante

Vous venez d'approfondir votre compréhension des subtilités gazières des contrats intelligents Ethereum. En vous exerçant avec Remix, vous pouvez visualiser et comprendre l'impact des différentes opérations sur le gaz total d'une transaction. Dans la prochaine leçon, nous aborderons les techniques d'optimisation, où vous apprendrez comment rendre vos contrats plus économes en gaz.

Restez curieux et continuez à expérimenter !

Exclusão de responsabilidade
* O investimento em criptomoedas envolve riscos significativos. Prossiga com cuidado. O curso não pretende ser um conselho de investimento.
* O curso é criado pelo autor que se juntou ao Gate Learn. Qualquer opinião partilhada pelo autor não representa o Gate Learn.