Moonbeam是Polkadot网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。
作为在Polkadot网络上的平行链,Moonbeam 也将受益于Polkadot中继链的共享安全性以及与其它 Polkadot 相关链的连接性。
为了使更多对Moonbeam技术充满热情和好奇的开发者能够参与进来,OneBlock+与Moonbeam共同推出了《Moonbeam入门 - 轻松开始跨链Solidity开发》课程,已于8月26日正式开课。上次我们介绍什么是Moonbeam平台跟它的一些特性,这节课就让我们来动手学习Moonbeam入门开发。以下是第四课文字版内容回顾。
本节课课程内容:
1. 简单介绍智能合约概念
2. ERC-20智能合约
3. 获取Moonbeam测试Dev
4. 使用Truffle在Moonbeam部署ERC20智能合约
5. 简单ERC-20操作和测试
ERC-20智能合约
-
最常见的智能合约种类之一,以太坊链Dev协议标准的一种
-
目前有450000+个ERC-20 Dev在以太坊主链 (http://shorturl.at/nwCTV)
-
2015/11, 由EIP-20提议(https://eips.ethereum.org/EIPS/eip-20)
ERC-20协议内容
Methods:
function name() public view returns (string)
function symbol() public view returns (string)
function decimals() public view returns (uint8)
function totalSupply() public view returns (uint256)
function balanceOf(address _owner) public view returns (uint256 balance)
function transfer(address _to, uint256 _value) public returns (bool success)
function transferFrom(address _from, address _to, uint256 _value) public returns (bool success)
function approve(address _spender, uint256 _value) public returns (bool success)
function allowance(address _owner, address _spender) public view returns (uint256 remaining)
Events:
event Transfer(address indexed _from, address indexed _to, uint256 _value)
event Approval(address indexed _owner, address indexed _spender, uint256 _value)
获取Moonbeam测试Dev
Moonbeam本地开发节点
测试Dev获取方式:导入预注入资金开发账号
开发账户私钥:https://qrgo.page.link/WGRdE
(导入私钥的方法请参考第三课)

使用Metamask链接Moonbeam节点
Moonbase Alpha 测试网:这是一个独立运行的,专门用来测试Moonbeam的一个网络。
测试Dev名称:DEV
获取方式:测试Dev水龙头
1. 加入Moonbeam Discord:
https://discord.com/invite/ssvKu6Un8v
2. 在Miscellaneous/alphanet-bot频道里输入:
!faucet send <钱包地址>

输入之后,机器人会给你发5个DEV。如果有的同学无法使用Discord上的水龙头,但是需要测试Dev的话,可以在群里@老师助教,我们可以直接把Dev发到你的钱包。
使用Truffle部署ERC-20智能合约
OpenZeppelin ERC-20 合约
OpenZeppelin是很有用的,因为它提供很多开源的以太坊智能合约模版。其中包括Dev,治理类或者接口类。OpenZeppelin的优势是,它上面的很多的智能合约都是经过审计的,也就是说它的安全性是有一定的保障的。
shorturl.at/fiCGL

这里我们用我们上一节课下载的Moonbeam Truffle box来部署这个ERC-20 智能合约。我们先用vs code来看一下这个文件里的重要内容。首先来看truffle config.js. 这个文件是包含truffle部署的绝大多数文件都在这里面。
两个私钥:
-
本地开发节点私钥
-
Moonbase Alpha上面的私钥 (可以通过Metamask来建立一个账户,然后把私钥再通过Metamask 把它导出,然后把这个私钥放在上面)之后部署会从这个账号来付费用。
Truffle部署脚本
https://github.com/hyd628/OneBlockCourseScripts/tree/main/Week4

在Truffle下面的Contract里面的合约:
-
Migrations: 帮助部署的一个合约。
-
MyTok: 是OpenZeppelin的ERC-20智能合约。
使用Truffle 把ERC-20智能合约部署到两个地方:
-
本地运行的Moonbeam节点。
-
Moonbase Alpha测试网。
简单ERC-20操作和测试
用MetaMask连接Moonbase Alpha
https://docs.moonbeam.network/builders/get-started/moonbase/#connect-metamask

可以用Chrome直接打开链接,然后按照提示去做就可以了。在Moonbase Alpha和本地节点上做的步骤都是一样的。唯一的区别就是Metamask要链接本地的节点,智能合约地址也要用本地的智能合约地址。
相关资料
第四课课程视频链接:https://jhp.h5.xeknow.com/s/4xBPGm
第四课课程作业链接:https://wj.qq.com/s2/9004324/48a4/
GitHubFAQ:https://github.com/hyd628/OneBlockCourseScripts
Moonbeam网站:moonbeam.network
MoonbeamGitHub:github.com/PureStake/moonbeam
Moonbeam中文开发者文档:https://docs.moonbeam.network/cn/
MoonbeamDiscord:https://discord.gg/PfpUATX
关于Moonbeam
Moonbeam是波卡(Polkadot)网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。作为在波卡(Polkadot)网络上的平行链,Moonbeam也将受益于波卡(Polkadot)中继链的共享安全性以及与其它波卡(Polkadot)相关链的连接性。Moonbeam由PureStake团队开发,目前正在预上线阶段,主网计划于2021年Q4季度上线。
如需了解更多信息,请访问:Moonbeam | Polkadot Smart Contract Platform
关于Moonriver
Moonriver是Moonbeam的同行网络,旨在为激励实验提供永久性的测试环境。新上线项目的代码将优先部署到Moonriver,在其真实的经济环境下经历一系列的测试与实验验证。当验证完成并通过测试之后,项目代码才可正式部署至波卡上的Moonbeam。
如需了解更多信息,请访问:Moonriver - Solidity Smart Contracts on Kusama
更多 Moonbeam 信息
官网: Moonbeam | Polkadot Smart Contract Platform
微博:Sina Visitor System
twitter: https://twitter.com/MoonbeamNetwork
Telegram: https://t.me/moonbeam_CN
Discord: https://discord.gg/skPfXvJWG7
中文电报群助手:@MoonbeamSister

1649

被折叠的 条评论
为什么被折叠?



