Leçon 1

Remix设置

欢迎来到《Remix中的以太坊Gas优化策略》课程第一章!

欢迎来到《Remix中的以太坊Gas优化策略》课程第一章!在开始本次课程的学习之前,想必大家已经具备了一定的以太坊智能合约开发经验,也应该注意到每笔交易和部署过程都会产生gas费用。Gas确保以太坊网络健康运作,没有垃圾信息,但这也意味着我们在智能合约中编写的每一行代码在执行时都可能花费实实在在的金钱。

如果您不是专家,那么在开始之前,可以先阅读以下文章增加了解:

什么是以太坊?

什么是智能合约?

什么是Gas费?

在本课程中,我们将深入了解gas成本,并探讨降低gas成本的方法。在开始优化技术之前,我们需要熟悉基础概念和工具。第一课的重点是设置Remix开发环境,并介绍以太坊中gas的核心概念。

设置Remix

为什么选择Goerli测试网?

以太坊的测试网类似于主网,但开发人员可以在不花费真正的以太币(ETH)的情况下进行测试。由于Goerli测试网在以太坊社区中具有较高的稳定性和采用率,我们将使用它进行示例讲解。

测试网和主网之间有什么区别?

为什么选择Remix?

Remix是一款专为以太坊智能合约开发而设计的开源工具,提供了一个用户友好的环境,用于创建、部署和测试智能合约。它内置的静态分析工具对我们课程的开展至关重要,有助于大家理解各个函数的gas消耗。

在Remix上设置Goerli测试网

  • 在浏览器中启动Remix IDE。
  • 进入Deploy & Run Transactions
  • Environment下拉列表中,选择Injected Provider。此选项将使Remix连接到任何Web3提供商,如MetaMask。

  • 确保MetaMask与Goerli测试网连接。如果尚未设置,请将MetaMask中的网络切换为Goerli测试网。

  • 完成后,你的Remix现在应该显示Goerli测试网和帐户地址。

通过Remix在Goerli上部署基础合约

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

contract SimpleStorage {
    uint256 public storedValue;

    function set(uint256 value) public {
        storedValue = value;
    }

    function get() public view returns (uint256) {
        return storedValue;
    }
}
  1. 复制以上合约代码。

  2. 在Remix的Solidity选项卡下,单击+图标创建一个新文件,并将其命名为SimpleStorage.sol

  3. 粘贴合约代码。

  4. 进入Deploy & Run Transactions选项卡。

  5. 单击Deploy按钮。确认MetaMask交易。现在,你的合约便成功在Goerli测试网上部署了!(在部署合约前,请确保你的Metamask钱包中有足够的GoerliETH。若需要GoerliETH,可以访问https://goerlifaucet.com/并根据说明领取。)

思考

尝试运行Remix中已部署的合约的setget函数,并注意gas消耗情况。思考以下问题:

  • 哪些操作会消耗更多的gas?
  • 函数的复杂性与gas成本有何关系?

对以上问题的思考有助于大家为我们即将开始的gas优化课程奠定基础。

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 1

Remix设置

欢迎来到《Remix中的以太坊Gas优化策略》课程第一章!

欢迎来到《Remix中的以太坊Gas优化策略》课程第一章!在开始本次课程的学习之前,想必大家已经具备了一定的以太坊智能合约开发经验,也应该注意到每笔交易和部署过程都会产生gas费用。Gas确保以太坊网络健康运作,没有垃圾信息,但这也意味着我们在智能合约中编写的每一行代码在执行时都可能花费实实在在的金钱。

如果您不是专家,那么在开始之前,可以先阅读以下文章增加了解:

什么是以太坊?

什么是智能合约?

什么是Gas费?

在本课程中,我们将深入了解gas成本,并探讨降低gas成本的方法。在开始优化技术之前,我们需要熟悉基础概念和工具。第一课的重点是设置Remix开发环境,并介绍以太坊中gas的核心概念。

设置Remix

为什么选择Goerli测试网?

以太坊的测试网类似于主网,但开发人员可以在不花费真正的以太币(ETH)的情况下进行测试。由于Goerli测试网在以太坊社区中具有较高的稳定性和采用率,我们将使用它进行示例讲解。

测试网和主网之间有什么区别?

为什么选择Remix?

Remix是一款专为以太坊智能合约开发而设计的开源工具,提供了一个用户友好的环境,用于创建、部署和测试智能合约。它内置的静态分析工具对我们课程的开展至关重要,有助于大家理解各个函数的gas消耗。

在Remix上设置Goerli测试网

  • 在浏览器中启动Remix IDE。
  • 进入Deploy & Run Transactions
  • Environment下拉列表中,选择Injected Provider。此选项将使Remix连接到任何Web3提供商,如MetaMask。

  • 确保MetaMask与Goerli测试网连接。如果尚未设置,请将MetaMask中的网络切换为Goerli测试网。

  • 完成后,你的Remix现在应该显示Goerli测试网和帐户地址。

通过Remix在Goerli上部署基础合约

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

contract SimpleStorage {
    uint256 public storedValue;

    function set(uint256 value) public {
        storedValue = value;
    }

    function get() public view returns (uint256) {
        return storedValue;
    }
}
  1. 复制以上合约代码。

  2. 在Remix的Solidity选项卡下,单击+图标创建一个新文件,并将其命名为SimpleStorage.sol

  3. 粘贴合约代码。

  4. 进入Deploy & Run Transactions选项卡。

  5. 单击Deploy按钮。确认MetaMask交易。现在,你的合约便成功在Goerli测试网上部署了!(在部署合约前,请确保你的Metamask钱包中有足够的GoerliETH。若需要GoerliETH,可以访问https://goerlifaucet.com/并根据说明领取。)

思考

尝试运行Remix中已部署的合约的setget函数,并注意gas消耗情况。思考以下问题:

  • 哪些操作会消耗更多的gas?
  • 函数的复杂性与gas成本有何关系?

对以上问题的思考有助于大家为我们即将开始的gas优化课程奠定基础。

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.
It seems that you are attempting to access our services from a Restricted Location where Gate.io is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.