币安链智能合约DAPP模式系统开发
2019年4月,加密货币交易所I8I系微259I统-3365币安(Binance)推出了币安链(Binance Chain),这是一个为了快速交换资产而构建和优化的网络,也是BNB代币诞生的地方。在币安链上你可以:
发送和接收BNB代币
发行新代币
发送,接收,销毁/铸造和冻结/解冻代币
提议在两个不同的代币之间创建交易对
通过链上创建的交易对发送买卖资产的订单
币安链非常适合这些寻求加快交易速度的用户。但是,在设计上它并不兼容EVM,也不支持智能合约。为了能够创建智能合约,币安团队还创建了币安智能链(BSC),该网络使用权益授权证明(PoSA)共识算法并且与EVM兼容,从而使智能合约开发者能够构建可编程的dApps,且天然能与币安链进行集成。
这种双链架构一方面使得在资产交换端能快速交易,另一方面还支持智能合约。币安团队实际上创造了一个术语“CeDeFi”或者称其为“中心化的去中心化金融”来描述这种混合方法,该方法达成了一种权衡,即在使用更少的去中心化架构以实现更大的交易吞吐量,同时仍确保开发者能以无需许可的方式部署应用程序,并且可使用以太坊中的相同的可组合工具,例如Solidity和Chainlink喂价。
币安智能链Chainlink喂价可在币安主网上使用,且能用于在币安智能链(BSC)上构建需要去中心化的,防篡改的数据输入的应用程序。在本技术教程中,我们将阐述如何使用币安智能链,BNB代币和Chainlink预言机,即使你没有以太坊开发经验,也能够学会如何快速开始在币安智能链(BSC)上构建外部连接的智能合约。
使用BSC开发
我们将使用的工具
由于BSC与EVM兼容,我们可以使用在Solidity开发环境中会用到的相同的工具集,如Truffle,Hardhat,MetaMask等。在本教程中,我们将使用Python智能合约开发框架Brownie在BSC上开发,因为币安测试网目前不支持Chainlink喂价,而Brownie框架具有可以在本地使用的强大的分叉链特性。
如果你对在币安智能链上使用Truffle和Hardhat开发而不是使用Brownie感兴趣,可以查看ganache-cli的分叉链功能,或者跳到我们谈论分叉的地方--我们将介绍如何在ganache上运行。事实上,我们在测试时,Brownie在后端使用的正是ganache-cli分叉。
要求
python3
nodejs
ganache-cli
brownie
检查Python版本,终端中输入:
python--version
对于nodejs,输入:
node-v
可以在点击文本下载python和nodejs。Node预先安装有npm。然后通过下面的命令确保安装ganache-cli:
npm install-g ganache-cli
或者
yarn global add ganache-cli
后,用下面的命令安装Brownie:
pip install eth-brownie
或者:
pip3 install eth-brownie
现在我们一切就绪!
发送和接收BNB代币
发行新代币
发送,接收,销毁/铸造和冻结/解冻代币
提议在两个不同的代币之间创建交易对
通过链上创建的交易对发送买卖资产的订单
币安链非常适合这些寻求加快交易速度的用户。但是,在设计上它并不兼容EVM,也不支持智能合约。为了能够创建智能合约,币安团队还创建了币安智能链(BSC),该网络使用权益授权证明(PoSA)共识算法并且与EVM兼容,从而使智能合约开发者能够构建可编程的dApps,且天然能与币安链进行集成。
这种双链架构一方面使得在资产交换端能快速交易,另一方面还支持智能合约。币安团队实际上创造了一个术语“CeDeFi”或者称其为“中心化的去中心化金融”来描述这种混合方法,该方法达成了一种权衡,即在使用更少的去中心化架构以实现更大的交易吞吐量,同时仍确保开发者能以无需许可的方式部署应用程序,并且可使用以太坊中的相同的可组合工具,例如Solidity和Chainlink喂价。
币安智能链Chainlink喂价可在币安主网上使用,且能用于在币安智能链(BSC)上构建需要去中心化的,防篡改的数据输入的应用程序。在本技术教程中,我们将阐述如何使用币安智能链,BNB代币和Chainlink预言机,即使你没有以太坊开发经验,也能够学会如何快速开始在币安智能链(BSC)上构建外部连接的智能合约。
使用BSC开发
我们将使用的工具
由于BSC与EVM兼容,我们可以使用在Solidity开发环境中会用到的相同的工具集,如Truffle,Hardhat,MetaMask等。在本教程中,我们将使用Python智能合约开发框架Brownie在BSC上开发,因为币安测试网目前不支持Chainlink喂价,而Brownie框架具有可以在本地使用的强大的分叉链特性。
如果你对在币安智能链上使用Truffle和Hardhat开发而不是使用Brownie感兴趣,可以查看ganache-cli的分叉链功能,或者跳到我们谈论分叉的地方--我们将介绍如何在ganache上运行。事实上,我们在测试时,Brownie在后端使用的正是ganache-cli分叉。
要求
python3
nodejs
ganache-cli
brownie
检查Python版本,终端中输入:
python--version
对于nodejs,输入:
node-v
可以在点击文本下载python和nodejs。Node预先安装有npm。然后通过下面的命令确保安装ganache-cli:
npm install-g ganache-cli
或者
yarn global add ganache-cli
后,用下面的命令安装Brownie:
pip install eth-brownie
或者:
pip3 install eth-brownie
现在我们一切就绪!