Leçon 2

Розуміння витрат на газ

З поверненням! Тепер, коли ви маєте фундаментальне розуміння газу та взаємодієте з базовим смарт-контрактом, настав час глибше заглибитися в тонкощі витрат на газ. Цей урок допоможе вам ознайомитися з основними газовими операціями в Ethereum і навчить вас, як визначати витрати газу на операції в Remix IDE.

Основні операції з Ethereum і витрати на газ

Операційні витрати

В Ethereum кожна операція має пов’язану вартість газу. Деякі типові витрати включають:

  • Базові витрати: основні операції, такі як додавання або встановлення змінної.
  • Витрати на пам'ять: Зберігання або отримання даних у пам'яті.
  • Витрати на зберігання: взаємодія зі станом Ethereum (наприклад, оновлення контрактного сховища) – зазвичай найдорожче.

Це важливо розуміти, оскільки багато методів оптимізації газу передбачають обмін дорожчих операцій на дешевші.

Визначення витрат на газ у реміксі

З Remix стає значно простіше розпізнати газ, який споживає діяльність нашого контракту.

Процедура

  1. Статичний аналіз: перейдіть до вкладки Analysis у Remix (позначено піктограмою мікроскопа). Цей потужний інструмент надасть уявлення про потенційні підводні камені та можливості оптимізації у вашому коді.

  2. Розгортання та взаємодія: після розгортання вашого контракту (як ви робили в уроці 1) кожна взаємодія відображатиме оцінку газу. Коли ви викликаєте функцію, використаний газ відображається на нижній правій панелі.

  3. Панель деталей: під час розгортання функції або взаємодії з нею клацніть стрілку вниз у журналі транзакцій (внизу праворуч). Це розгорне журнал із детальною інформацією про вартість газу для транзакції.

Практика: ідентифікація важких газових операцій

Оцінимо зразок договору та його дії:

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

 контракт GasDemo { 
 uint256 публічна кількість; 
 відображення (адреса => uint256) публічних балансів; 

 функція increment() public {
        count += 1;
    }

    функція updateBalance(uint256 newBalance) public {
        balances[msg.sender] = newBalance;
    }
}
  1. Розгорніть контракт GasDemo на Goerli Testnet через Remix.

  2. Взаємодійте з функцією increment кілька разів.

  3. Перевірте використаний газ у деталях транзакції.

  4. Тепер взаємодійте з функцією updateBalance , встановлюючи різні баланси.

  5. Ще раз перевірте використаний газ.

Розмірковувати над:

  • Яка функція споживає більше газу і чому? (Порада: біля кожної функції ви відобразили приблизну кількість спожитого газу)
  • Як оновлення відображення порівнюється з точки зору газу до збільшення простого лічильника?

Повторення та підготовка до наступного уроку

Ви щойно поглибили своє розуміння газових тонкощів у смарт-контрактах Ethereum. Попрактикувавшись із Remix, ви зможете візуалізувати та зрозуміти, як різні операції впливають на загальний газ транзакції. У нашому наступному уроці ми перейдемо до методів оптимізації, де ви дізнаєтеся, як зробити свої контракти більш ефективними з використання газу.

Залишайтеся цікавими та продовжуйте експериментувати!

Clause de non-responsabilité
* Les investissements en cryptomonnaies comportent des risques importants. Veuillez faire preuve de prudence. Le cours n'est pas destiné à fournir des conseils en investissement.
* Ce cours a été créé par l'auteur qui a rejoint Gate Learn. Toute opinion partagée par l'auteur ne représente pas Gate Learn.
Catalogue
Leçon 2

Розуміння витрат на газ

З поверненням! Тепер, коли ви маєте фундаментальне розуміння газу та взаємодієте з базовим смарт-контрактом, настав час глибше заглибитися в тонкощі витрат на газ. Цей урок допоможе вам ознайомитися з основними газовими операціями в Ethereum і навчить вас, як визначати витрати газу на операції в Remix IDE.

Основні операції з Ethereum і витрати на газ

Операційні витрати

В Ethereum кожна операція має пов’язану вартість газу. Деякі типові витрати включають:

  • Базові витрати: основні операції, такі як додавання або встановлення змінної.
  • Витрати на пам'ять: Зберігання або отримання даних у пам'яті.
  • Витрати на зберігання: взаємодія зі станом Ethereum (наприклад, оновлення контрактного сховища) – зазвичай найдорожче.

Це важливо розуміти, оскільки багато методів оптимізації газу передбачають обмін дорожчих операцій на дешевші.

Визначення витрат на газ у реміксі

З Remix стає значно простіше розпізнати газ, який споживає діяльність нашого контракту.

Процедура

  1. Статичний аналіз: перейдіть до вкладки Analysis у Remix (позначено піктограмою мікроскопа). Цей потужний інструмент надасть уявлення про потенційні підводні камені та можливості оптимізації у вашому коді.

  2. Розгортання та взаємодія: після розгортання вашого контракту (як ви робили в уроці 1) кожна взаємодія відображатиме оцінку газу. Коли ви викликаєте функцію, використаний газ відображається на нижній правій панелі.

  3. Панель деталей: під час розгортання функції або взаємодії з нею клацніть стрілку вниз у журналі транзакцій (внизу праворуч). Це розгорне журнал із детальною інформацією про вартість газу для транзакції.

Практика: ідентифікація важких газових операцій

Оцінимо зразок договору та його дії:

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

 контракт GasDemo { 
 uint256 публічна кількість; 
 відображення (адреса => uint256) публічних балансів; 

 функція increment() public {
        count += 1;
    }

    функція updateBalance(uint256 newBalance) public {
        balances[msg.sender] = newBalance;
    }
}
  1. Розгорніть контракт GasDemo на Goerli Testnet через Remix.

  2. Взаємодійте з функцією increment кілька разів.

  3. Перевірте використаний газ у деталях транзакції.

  4. Тепер взаємодійте з функцією updateBalance , встановлюючи різні баланси.

  5. Ще раз перевірте використаний газ.

Розмірковувати над:

  • Яка функція споживає більше газу і чому? (Порада: біля кожної функції ви відобразили приблизну кількість спожитого газу)
  • Як оновлення відображення порівнюється з точки зору газу до збільшення простого лічильника?

Повторення та підготовка до наступного уроку

Ви щойно поглибили своє розуміння газових тонкощів у смарт-контрактах Ethereum. Попрактикувавшись із Remix, ви зможете візуалізувати та зрозуміти, як різні операції впливають на загальний газ транзакції. У нашому наступному уроці ми перейдемо до методів оптимізації, де ви дізнаєтеся, як зробити свої контракти більш ефективними з використання газу.

Залишайтеся цікавими та продовжуйте експериментувати!

Clause de non-responsabilité
* Les investissements en cryptomonnaies comportent des risques importants. Veuillez faire preuve de prudence. Le cours n'est pas destiné à fournir des conseils en investissement.
* Ce cours a été créé par l'auteur qui a rejoint Gate Learn. Toute opinion partagée par l'auteur ne représente pas Gate Learn.