Title:Web3 新手如何部署第一个智能合约?
Subtitle:开发者提升指南|超全步骤带你轻松上手智能合约开发
来源:https://www.web3.university/tracks/create-a-smart-contract/deploy-your-first-smart-contract
编译:TinTinLand 社区
智能合约是区块链开发存在的首要原因。以太坊在 2013 年提出的核心创新点是允许开发人员编写小段代码(称为智能合约),这些代码可以部署到以太坊网络并独立于创建者进行运行。在以太坊中,智能合约是用 Solidity 编写的,而 Solidity 是一种旨在以太坊虚拟机上运行的高级编程语言。
智能合约作为一种定义一组规则的程序或“合约”,当用户在区块链上调用时,会自动执行编码的规则;具体来说,智能合约一旦部署,其功能将始终相同且无法被恶意行为者修改或控制。因此,智能合约逐渐成为运行金融应用程序的理想选择,它可以作为独立参与者以有保证、可重复的方式接收或发送加密资产。
那么你知道智能合约的运行原理和部署方法吗?如果你是区块链开发新手,不知道从何开始或者你只是想了解如何与智能合约交互操作,那么本篇指南将会非常适合你。我们将介绍如何使用虚拟钱包 (Metamask)、Solidity、Hardhat 和 Alchemy 在 Goerli 测试网络上创建和部署简单的智能合约。
步骤 1:连接到以太坊
向以太坊发出请求的方法有很多种。简单来说,我们使用的是 Alchemy 上的免费帐户,这是一个区块链开发者平台和 API,允许我们与以太坊进行通信而无需运行个人节点。该平台还具备用于监控和分析的开发工具,我们将在本篇推文中利用这些工具来了解智能合约部署的具体情况。
步骤 2:创建应用(和 API 密钥)
创建 Alchemy 帐户后,你可以通过创建应用程序来生成 API 密钥,这将允许向 Goerli 测试网络发出请求;将鼠标悬停在导航栏中的“应用程序”上,然后单击“创建应用程序”,导航到 Alchemy 仪表板中的“创建应用程序”页面:
将你的应用命名为“Hello World”并提供简短描述,为环境选择“Staging”(作为你的应用账本)并为网络选择“Goerli”。
你需要仔细检查是否选择了 Goerli 测试网,点击“创建应用”,并看到应用出现在列表中。
步骤 3:创建以太坊账户(地址)
接下来需要一个以太坊账户来发送和接收交易,我们将使用 Metamask,这是浏览器中用于管理以太坊账户地址的虚拟钱包;你可以免费下载并创建 Metamask 帐户,创建帐户时,若你已有一个帐户,请确保切换到右上角的“Goerli 测试网络”(这样我们就不会处理真实资产)。
步骤 4:从 Faucet 添加 ether
为了将智能合约部署到测试网络,我们需要一些虚拟 Eth;获取 Eth 可以前往 Goerli faucet 输入你的 Goerli 帐户地址然后单击“发送 Eth”。由于网络流量限制,你可能需要一些时间才能接收到虚拟 Eth,很快你就会在 Metamask 帐户中看到 Eth。
步骤 5:检查余额
再次检查余额需要使用 Alchemy 编写器工具发出 eth_getBalance 请求,这将返回钱包的 Eth 数量;
输入 Metamask 帐户地址并单击“发送请求”后,你应该会看到如下程序响应:
{"jsonrpc": "2.0", "id": 0, "result": "0x2B5E3AF16B1880000"}
注意:此结果以 wei 为单位,而不是 eth。wei 是最小的 ether 单位。从 wei 到 eth 的换算为:1 eth = 10^18 wei。因此,如果我们将 0x2B5E3AF16B1880000 转换为十进制,我们会得到 5*10^18,相当