主页 > imtoken注册 > 作为英雄的以太坊零:建立我们的第一个合约

作为英雄的以太坊零:建立我们的第一个合约

imtoken注册 2024-01-09 05:12:13

以太坊以零为英雄:建立我们的第一个合同

这是我们以太坊从零到英雄指南的第三部分。 如果您还没有阅读上一篇文章,我强烈建议您在继续之前检查一下。

在这篇文章中,我们将开始开发基本的智能合约以太坊经典钱包,并更多地了解稳定性和合约的运作方式。

以太坊区块链最有趣的功能之一是能够创建数字代币。 代币是数字资产,可以代表从硬币和忠诚度积分到物理世界中的实际物体的任何事物。 代币也可用于与其他智能合约进行交互。

代币在以太坊网络中作为加密货币出售和交易,并允许用户支付智能合约交易费用。 对于我们的第一个合同,我们将创建在私有网络上部署所需的最小可行合同。

关于ERC20

通常在处理代币时,您会看到引用了 ERC20 一词。 ERC20 是一种代币标准,描述了以太坊代币合约必须实现的功能和事件,通过遵循该标准,我们保证代币将立即与以太坊钱包和使用相同标准的任何其他客户端或合约兼容。

为了使令牌成为 ERC20 投诉,它必须执行以下操作:

有关 ERC20 标准的更多详细信息,请查看以下链接:

以太坊钱包 以太坊钱包是以太坊区块链上去中心化应用程序的门户。 它使您能够持有和保护以太币和其他基于以太坊的加密资产,以及编写、部署和使用智能合约。

到目前为止,我们一直在直接在 Geth 控制台上工作,虽然我强烈建议以太坊开发人员熟悉和熟悉 Geth,以便了解以太坊的一些内部工作原理,以便更快地移动和更智能地工作,但我们会切换到以太坊官方钱包:

以太坊以零为英雄:建立我们的第一个合同

在继续之前,请确保下载并安装以太坊钱包。

将钱包连接到我们的私人测试网

默认情况下,以太坊钱包将尝试连接到主网络,并允许您连接到其中一个测试网络。

出于我们的目的,我们希望它自动开始连接到我们的测试网,因此在打开钱包之前,请执行以下操作:

免责声明:以下操作将覆盖主网的所有本地信息,这可能会导致以太币丢失,请小心并理解您正在运行的命令。要停止正在运行的geth节点,请运行以下命令

geth --datadir ./TestNetData --identity "HeroNode1" --ipcpath ~/Library/Ethereum/geth.ipc --networkid 24 --maxpeers 1 控制台

现在我们可以打开以太坊钱包,它应该会自动连接到测试网,我们的工作是重启 Geth 节点并将 IPC(进程间通信)管道设置到钱包具有默认值的同一位置:A将直接建立与我们的 Geth 节点的连接,而不是与主网络的连接。

在继续之前,请确保钱包将网络名称显示为 Private-Net。

最小可行代币

正如我们在本系列的第一篇文章中了解到的,合约是使用 Solidity 语言编写的。 有多种工具可用于编译、调试和编写 Solidity 合约,目前,我们将使用以太坊钱包自带的 Solidity 合约编辑器。

这是我们最小可行代币的代码:

现在,从上方获取源代码并将其粘贴到 Solidity Contract source code 字段中。 钱包会自动检查代码是否编译成功,编译成功后会在右侧看到“选择合约”下拉列表,如下图:

以太坊以零为英雄:建立我们的第一个合同

需要注意的一件事是,还有一个构造函数参数,在本例中是最初提供的 Hero Tokens,这会在合约创建时引起问题。

如果你继续向下滚动,你会看到合同计算成本的估计,你可以选择你愿意支付多少以太币作为费用。 不要忘记设置我们将发行的初始代币数量,现在继续并单击“部署”按钮。

接下来,您将看到类似于以下内容的确认对话框:

以太坊以零为英雄:建立我们的第一个合同

合同提交后,您应该会在下面的最新交易中看到它,等待确认。 通常情况下,确认合约大约需要 30 秒,但是此时,我们可以等待,不会有任何事情发生。

以太坊以零为英雄:建立我们的第一个合同

这是因为网络中没有其他节点,也没有人在挖矿,而以太坊和比特币一样以太坊经典钱包,现在作为一个工作量证明网络,我就不细说了,但是你可以阅读下面的文章了解详情。 阐明:

解释区块链工作量证明如何实现无需信任的共识

让我们通过进入节点控制台并输入以下内容来验证我们的合同:

miner.start()

确认合同大约需要 12 笔交易,完成后我们可以通过键入以下命令停止矿工:

矿工。 停止()

查看最近的交易,我们的合约现在应该已经过验证,我们可以通过转到 Contracts 选项卡来确认这一点,我们应该会看到我们新创建的合约。

以太坊以零为英雄:建立我们的第一个合同

单击它转到其页面。 单击“复制地址”并将合约地址粘贴到文本编辑器中,您很快就会需要它。

以太坊以零为英雄:建立我们的第一个合同

如果你点击你的钱包地址,它说你没有这些代币,有什么问题吗? 好吧,钱包只跟踪它知道的代币,我们还没有告诉我们的钱包跟踪我们全新的代币。

以太坊以零为英雄:建立我们的第一个合同

Tracking Token 转到合约页面 单击 Watch Token 按钮,将出现一个弹出窗口,复制合约地址并确保输入所有详细信息 单击确定

现在,如果你回到你的钱包,你应该会看到它在跟踪代币,如下面的屏幕截图所示。

以太坊以零为英雄:建立我们的第一个合同

恭喜! 您已成功创建您的第一个令牌。

下一步

虽然我们设法创建了一个基本令牌,但并非所有有用的功能现在都可用。 在下一篇文章中,我们将改进 HeroToken 合约并添加更多高级功能。

这篇文章最初发表在我自己的网站上。

从: