智能合約開發實戰(20) - 從頭到尾寫一個ERC20的加密貨幣之利用open zepplin(三)

閱讀時間約 3 分鐘
上一篇呢,我們用最原始的方法來寫一整個ERC20及把它發佈到鏈上,及進行相關的使用,其實一般情況不太可能會這樣從頭開始寫,一方面是不確定自己寫的程式碼有沒有問題、一方面是不確定有沒有漏洞,所以正常情況都是引用程式庫來使用,也就是照抄就可以了,而且在區塊鏈的世界裡面,程式碼是公開的,所以在很多的地方都能看到原始碼,目前最常用的是Open Zepplin,我們在程式中引用的是下面這個:
https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol
上面也有其他的程式碼,各位有興趣的可以上去看看。
下面就直接上程式碼:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol";
contract MyToken is ERC20 {
  constructor (string memory name, string memory symbol) ERC20(name, symbol) {
    _mint(msg.sender, 100 * 10 ** uint(decimals()));
  }
  function decimals() public pure override returns (uint8) {
    return 0;
  }
}
程式碼很簡單,主要就是跟上一篇一樣,不過可以看出,引用的話就變成只要少少的幾行就可以了,不像上一篇一樣寫的那麼長的一串,接下來我們來看一下發佈上去的效果是不是也和上一篇一樣。
一樣用Web3連結你的狐狸錢包,因為會收Gas fee,所以沒有錢的該照著上一篇的作法去跟水龍頭要點錢。
記得CONTRACT要選對,是我們的這個MyToken:
然後在DEPLOY裡面,我們一樣設定和上一篇一樣,
NAME:cryptolin.finance、SYMBOL:lin,之後就可以按下transact了。
之後你應該會看到新的lin
接下來把部屬好的合約打開來,可以看到和上一篇相同的一些function
基本上功能和上一篇是一模一樣的,有興趣的各位可以玩一下,我這邊就不再重覆了,可以看出用這種引用的方式是不是很快,不用自己寫那麼長的代碼,結果效果是一樣的,好了,以上就是介紹怎麼引用Open Zepplin的代碼來完成發幣的動作,謝謝大家。
有什麼想要了解或是不清楚的部份,歡迎留言和我分享。
如果喜歡我的文章歡迎追隨,按愛心,我每週都會上新文章。
為什麼會看到廣告
avatar-img
20會員
38內容數
目前加密貨幣的市場上幣種非常的多 讓你看得眼花撩亂了嗎? 可以藉由這一系列的加密貨幣分析 能夠幫忙您了解每一個加密貨幣它的價值所在 每一集都會介紹一種幣 是一個很實用的專題,歡迎大家訂閱~
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
宅D嘉的沙龍 的其他內容
上一篇寫完了ERC20的程式碼,這篇來寫寫怎麼發幣,上去區塊鏈,但有一些基本的設定要完成,也就是必須連結MetaMask錢包(人稱:狐狸錢包),拿Ropsten測試網路來當發幣測試,先過去MetaMask做好設定(沒有的上網註冊一個,不會用的上網查一下怎麼設定有很多介紹,這邊就不再介紹了)。
學了這麼多的Solidity後,該來完整的寫一個ERC20的token,順便也了解一下發幣的邏輯。 然後只要符合下面這些標準的就可以是ERC20: 我們就把上面的這些寫入程式碼中: 有什麼想要了解或是不清楚的部份,歡迎留言和我分享。 如果喜歡我的文章歡迎追隨,按愛心,我每週都會上新文章。
最近在幣圈最火紅的不外乎就是LUNA和UST的暴跌了,只要上Google打LUNA或是UST就可以看到一堆的新聞或是文章了,這邊就不多說明,想知道原因的可以上Google大神去查詢。 我這邊要來說一下我的想法,和從這個事件中,我學到了什麼? 穩定幣不一定是安全的 留心高收益的陷阱 未來我的調整
factory pattern 工廠模式簡單的說就是負責創建一系列相同品質的智能合約,為什麼說是相同品質呢?因為有相同的模版,所以做出來的智能合約品質也會相同,我知道看到這裡可能還是有人會覺得霧煞煞的,沒關係,我們用下面的實作來說明就會比較清楚了: 提高合約安全性。
下面來Deploy看看: Deploy只要佈署Counter和MyContract就可以了,interface是不需要佈署的。 實現從MyContract經由接口去調用Counter的increment 可以藉由調用Uniswap的Interface來查看Uniswap兩個幣目前的流動狀況:
講完Import,這一篇我們來講講也是很重要的Library,我們之前有提到,程式是愈直覺簡單愈好,可以大大的減少維護成本,把可以共用的部份都抽離出來寫成部份程式碼就是我們今天要講的Library,可以是共用的功能或是檢查。 Library.sol testLibrary.sol
上一篇寫完了ERC20的程式碼,這篇來寫寫怎麼發幣,上去區塊鏈,但有一些基本的設定要完成,也就是必須連結MetaMask錢包(人稱:狐狸錢包),拿Ropsten測試網路來當發幣測試,先過去MetaMask做好設定(沒有的上網註冊一個,不會用的上網查一下怎麼設定有很多介紹,這邊就不再介紹了)。
學了這麼多的Solidity後,該來完整的寫一個ERC20的token,順便也了解一下發幣的邏輯。 然後只要符合下面這些標準的就可以是ERC20: 我們就把上面的這些寫入程式碼中: 有什麼想要了解或是不清楚的部份,歡迎留言和我分享。 如果喜歡我的文章歡迎追隨,按愛心,我每週都會上新文章。
最近在幣圈最火紅的不外乎就是LUNA和UST的暴跌了,只要上Google打LUNA或是UST就可以看到一堆的新聞或是文章了,這邊就不多說明,想知道原因的可以上Google大神去查詢。 我這邊要來說一下我的想法,和從這個事件中,我學到了什麼? 穩定幣不一定是安全的 留心高收益的陷阱 未來我的調整
factory pattern 工廠模式簡單的說就是負責創建一系列相同品質的智能合約,為什麼說是相同品質呢?因為有相同的模版,所以做出來的智能合約品質也會相同,我知道看到這裡可能還是有人會覺得霧煞煞的,沒關係,我們用下面的實作來說明就會比較清楚了: 提高合約安全性。
下面來Deploy看看: Deploy只要佈署Counter和MyContract就可以了,interface是不需要佈署的。 實現從MyContract經由接口去調用Counter的increment 可以藉由調用Uniswap的Interface來查看Uniswap兩個幣目前的流動狀況:
講完Import,這一篇我們來講講也是很重要的Library,我們之前有提到,程式是愈直覺簡單愈好,可以大大的減少維護成本,把可以共用的部份都抽離出來寫成部份程式碼就是我們今天要講的Library,可以是共用的功能或是檢查。 Library.sol testLibrary.sol
你可能也想看
Google News 追蹤
Thumbnail
前言 本篇要用 Token-2022 和 solana cli 來鑄造一個新的代幣叫做TYC。 如前篇所述,Token-2022 與 Spl Token 是不同的 Program,所以在呼叫的時候要特別註明以示明區別。 Token-2022 Program ID 地址: TokenzQdBNb
Thumbnail
这篇文章主要介绍了以太坊科普:理解ERC-20 token合约的相关资料,希望这篇关于理解ERC-20 token合约的文章,能够帮助各位朋友对以太坊有个更加深入的了解。 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R8
Thumbnail
为了编写智能合约,开发人员往往需要选择一种适合的编程语言,目前市场上有几种常用的智能合约编程语言,比如Solidity、Vyper、Michelson等,那么具体智能合约常用语言有哪些,让我们一起来看看吧 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续
Thumbnail
金国深入研究 TON 官方开发文档,感觉学习起来还是有些门槛,当前的文档内容似乎更像是一个内部开发文档,对新入门的开发者来说不太友好,因此试着以自己的学习轨迹,梳理一系列关于 TON Chain 项目开发的文章,希望可以对大家快速入门 TON DApp 开发有一些帮助, 🚀 币安 - 全球最大加
TRC20,ERC20,Bep20是三种不同的区块链协议,分别基于波场(TRON),以太坊(Ethereum)和币安智能链(BSC)网络。它们都可以用来发行代币,比如USDT,但是在转账费用、交易速度、智能合约等方面有一些差异。本文将介绍TRC20和ERC20的概念、特点和区别,以及如何在两种协议之
Thumbnail
寫作投資永遠不嫌晚,這是雙寶老爹的第#149篇關於加密貨幣教學文章,文未還有更多精彩的教學內容!
Thumbnail
之前討論過基於Ordinals協議的BRC-20,意旨將比特幣最小單位的SATS聰(以中本聰Satoshis命名)進行編號排序,使得可以在比特鏈上發行同質化代幣FT。
Thumbnail
過去BTC比特幣協定主要作為紀錄的block區塊,所以較沒有ETH以太坊生態的靈活性,2023年Casey Rodarmor提出Ordinals銘文概念,使比特生態有了新的樣貌,而BRC-20即是Ordinals銘文概念的一種延伸,類似於以太鏈的ERC-20。
Thumbnail
寫作投資永遠不嫌晚,這是雙寶老爹的第#143篇關於加密貨幣教學文章,文未還有更多精彩的教學內容!
Thumbnail
二月份最火熱的話題就是由Pandora團隊開發的ERC-404代幣標準,儘管目前ERC-404不屬於以太坊提案標準,但其結合ERC-20與ERC-721運用的概念,仍為市場帶來新的玩法。
Thumbnail
前言 本篇要用 Token-2022 和 solana cli 來鑄造一個新的代幣叫做TYC。 如前篇所述,Token-2022 與 Spl Token 是不同的 Program,所以在呼叫的時候要特別註明以示明區別。 Token-2022 Program ID 地址: TokenzQdBNb
Thumbnail
这篇文章主要介绍了以太坊科普:理解ERC-20 token合约的相关资料,希望这篇关于理解ERC-20 token合约的文章,能够帮助各位朋友对以太坊有个更加深入的了解。 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R8
Thumbnail
为了编写智能合约,开发人员往往需要选择一种适合的编程语言,目前市场上有几种常用的智能合约编程语言,比如Solidity、Vyper、Michelson等,那么具体智能合约常用语言有哪些,让我们一起来看看吧 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续
Thumbnail
金国深入研究 TON 官方开发文档,感觉学习起来还是有些门槛,当前的文档内容似乎更像是一个内部开发文档,对新入门的开发者来说不太友好,因此试着以自己的学习轨迹,梳理一系列关于 TON Chain 项目开发的文章,希望可以对大家快速入门 TON DApp 开发有一些帮助, 🚀 币安 - 全球最大加
TRC20,ERC20,Bep20是三种不同的区块链协议,分别基于波场(TRON),以太坊(Ethereum)和币安智能链(BSC)网络。它们都可以用来发行代币,比如USDT,但是在转账费用、交易速度、智能合约等方面有一些差异。本文将介绍TRC20和ERC20的概念、特点和区别,以及如何在两种协议之
Thumbnail
寫作投資永遠不嫌晚,這是雙寶老爹的第#149篇關於加密貨幣教學文章,文未還有更多精彩的教學內容!
Thumbnail
之前討論過基於Ordinals協議的BRC-20,意旨將比特幣最小單位的SATS聰(以中本聰Satoshis命名)進行編號排序,使得可以在比特鏈上發行同質化代幣FT。
Thumbnail
過去BTC比特幣協定主要作為紀錄的block區塊,所以較沒有ETH以太坊生態的靈活性,2023年Casey Rodarmor提出Ordinals銘文概念,使比特生態有了新的樣貌,而BRC-20即是Ordinals銘文概念的一種延伸,類似於以太鏈的ERC-20。
Thumbnail
寫作投資永遠不嫌晚,這是雙寶老爹的第#143篇關於加密貨幣教學文章,文未還有更多精彩的教學內容!
Thumbnail
二月份最火熱的話題就是由Pandora團隊開發的ERC-404代幣標準,儘管目前ERC-404不屬於以太坊提案標準,但其結合ERC-20與ERC-721運用的概念,仍為市場帶來新的玩法。