ภาคภูมิใจในด้านบล็อกเชนได้รับความสนใจอย่างมากจากการพัฒนาต่อเนื่องในด้านบล็อกเชน บิตคอยน์ อีเธอเรียม สกุลเงินดิจิทัล และ ICO สิ่งนี้เป็นเหตุให้ฉันเขียนบทแนะนำนี้ ซึ่งเป็นบทแรกในชุดบทความที่ออกแบบมาเพื่อช่วยให้บุคคลทั่วไปเข้าใจว่าจะใช้เทคโนโลยีบล็อกเชนและสกุลเงินดิจิทัลได้อย่างไรเพื่อสร้างแอปพลิเคชันที่มีผลงาน
ในบทแนะนำนี้ฉันมีเป้าหมายที่จะแนะนำคุณผ่านกระบวนการทั้งหมด ตั้งแต่การตั้งค่าบัญชีของคุณไปจนถึงการออกโทเค็นครั้งแรกของคุณบนเครือข่ายทดสอบ Ethereum โดยใช้สัญญาอัจฉริยะเดียวและMetamask. โทเค็นนี้จะทำหน้าที่เป็นโทเค็น ERC20 มาตรฐานบนเครือข่ายทดสอบ Ethereum ที่มีคุณสมบัติหลักที่สามารถใช้เป็นพื้นฐานหลากหลายสำหรับแอปพลิเคชันที่ซับซ้อนกว่าการโอนง่ายๆ
ก่อนที่คุณจะสร้างโทเค็น ERC20 ของคุณเอง คุณต้องเตรียมสิ่งต่อไปนี้:
ERC หมายถึง Ethereum Request for Comment โดยตัวเลข 20 คือหมายเลขการร้องขอแนะนำ วัตถุประสงค์ของ ERC-20 คือเพิ่มประสิทธิภาพให้กับเครือข่าย Ethereum นั้นเอง มันเป็นหนึ่งในมาตรฐาน ERC ที่สำคัญที่สุดและเป็นกรอบทางเทคนิคสำหรับการสร้างโทเค็นบนเหรียญบล็อกเชน Ethereum ผ่านสมาร์ทคอนแทร็กต์ ERC-20 ระบุกฎเกณฑ์ชุดหนึ่งที่โทเค็นที่พื้นฐานบน Ethereum ต้องปฏิบัติตาม กำหนดให้เป็นสินทรัพย์ที่พื้นฐานบนเหรียญบล็อกเชน ที่สามารถส่งและรับได้ มีมูลค่า ทำงานบนเหรียญบล็อกเชน Ethereum และเสียค่าแก็สในการทำธุรกรรม
ในปี 2015 นักพัฒนาชาวเยอรมันชื่อ Fabian Vogelsteller ได้มีส่วนร่วมในประวัติศาสตร์ของ Ethereum โดยการแสดงความคิดเห็นบนหน้า GitHub ของโครงการนี้ นี่เป็นความคิดเห็นครั้งที่ 20 ของเขา ในระหว่างที่เขากล่าวถึง ERC-20 ครั้งแรก ซึ่งเป็นการแนะนำในการขยายของ Ethereum รวดเร็ว ต่อมาก็มีการนำเสนอ ERC-20 เป็นตัวแก้ไขของปัญหาความยืดหยุ่นของเครือข่าย
การยอมรับและการนำมาใช้งานอย่างเป็นทางการของ ERC-20 ในฐานะเสนอแนะการปรับปรุง Ethereum (EIP-20) ที่ร่วมมือกับ Vogelsteller และ Ethereum ร่วมก่อตั้ง Vitalik Buterin เกิดขึ้นที่สิ้นปี 2017
ก่อนมาตรฐาน ERC-20 ผู้สร้างโทเค็นต้องเริ่มต้นจากศูนย์ซึ่งส่งผลให้มีความไม่สม่ำเสมอในต่างๆโทเค็น นักพัฒนาต้องเข้าใจโค้ดสมาร์ทคอนแทรคของโทเค็นอื่นๆอย่างเต็มที่เนื่องจากขาดโครงสร้างมาตรฐาน ทำให้กระเป๋าเงินและพื้นที่ซื้อขายต้องตรวจสอบโค้ดของโทเค็นแต่ละตัวเพื่อรองรับ การเพิ่มโทเค็นใหม่ในแอปพลิเคชันกลายเป็นงานที่ซับซ้อน
ด้วยการเปิดตัวมาตรฐาน ERC-20 คุณสมบัติที่เป็นมาตรฐานการทํางานร่วมกันและความสามารถในการถ่ายโอนทําให้กระเป๋าเงินและการแลกเปลี่ยนสามารถรวมโทเค็นหลายตัวและอํานวยความสะดวกในการแลกเปลี่ยนระหว่างกันได้อย่างง่ายดาย สัญญาอัจฉริยะที่ใช้ในโทเค็น ERC-20 สามารถดําเนินการและบังคับใช้ธุรกรรมทางการเงินที่ซับซ้อนได้โดยอัตโนมัติ ซึ่งจําเป็นสําหรับแพลตฟอร์ม DeFi บนแพลตฟอร์มเหล่านี้โทเค็นสามารถแสดงเครื่องมือทางการเงินต่างๆเช่นเงินกู้หรือหุ้นในกลุ่มสภาพคล่อง
มาตรฐาน ERC-20 ระบุหกฟังก์ชั่นบังคับและสามฟังก์ชั่นที่เลือกได้ที่สัญญาอัจฉริยะต้องดำเนินการด้วย
นี่คือฟังก์ชันที่ต้องการและคำอธิบายของคุณลักษณะ:
นอกจากฟังก์ชันพื้นฐานที่กล่าวถึงไว้ก่อนหน้านี้ ยังมีฟังก์ชันทางเลือกเพิ่มเติมที่สามารถเพิ่มประสิทธิภาพการใช้งานโทเค็น
หากคุณคุ้นเคยกับโปรแกรมเชิงวัตถุ คุณสามารถคิดเกี่ยวกับ ERC-20 เป็นอินเตอร์เฟซ หากต้องการทำให้โทเค็นของคุณกลายเป็นโทเค็น ERC-20 คุณต้องปรับใช้อินเตอร์เฟซ ERC-20 ซึ่งต้องการให้คุณรวมฟังก์ชันหลักหกฟังก์ชันเหล่านี้ โดยพื้นฐานแล้ว อินเตอร์เฟซ ERC-20 ทำหน้าที่เป็นแม่แบบ และสัญญาใดๆ ที่ต้องการจะจัดลำดับเป็นโทเค็น ERC-20 จะต้องออกแบบและปรับใช้ฟังก์ชันของตนโดยใช้แม่แบบนี้
เพื่อเริ่มต้นการ implement สัญญาของคุณบนเครือข่ายทดสอบ Ethereum Sepolia คุณต้องทำการติดตั้ง MetaMaskส่วนขยายบราวเซอร์หรือใช้วอลเล็ต Web3 อื่น ๆ เช่น Phantom หรือวอลเล็ตใด ๆ ที่เข้ากันได้กับ WalletConnect หลังจากตั้งค่าวอลเล็ตของคุณแล้ว คุณจะต้องได้รับ ETH ทดสอบบางส่วน คุณสามารถได้รับจากEthereum Sepolia Faucetซึ่งออกแบบมาเฉพาะสำหรับ Ethereum Sepolia test network การรับ ETH เพื่อทดสอบเป็นเรื่องง่ายดาย: แค่ไปที่เว็บไซต์ faucet, เชื่อมต่อที่อยู่กระเป๋าเงินหรือป้อนที่อยู่ของคุณและทำตามคำแนะนำ คุณยังสามารถแชร์ทวีตเพื่อรับรางวัลพิเศษได้ หรือคุณสามารถเลือกตัวเลือก “ไม่ขอบคุณ แค่ส่ง 0.05 ETH ถึงฉันได้เลย” เพื่อรับ ETH ทดสอบของคุณโดยตรง อย่างไรก็ตาม โปรดจำไว้ว่าคุณต้องมีอย่างน้อย 0.001 ETH ในบัญชี Ethereum mainnet เพื่อใช้ QuickNode test coin faucet
ในปัจจุบันมีโทเค็นจำนวนมากที่เป็นไปตามมาตรฐาน ERC20 ที่ทำงานบนบล็อกเชน Ethereum ซึ่งได้รับการพัฒนาโดยกลุ่มต่าง ๆ การประยุกต์ใช้เหล่านี้แตกต่างกัน บางส่วนเน้นการลดค่าแก๊สในขณะที่อื่นส่วนใหญ่เน้นการเพิ่มความปลอดภัย เพื่อสร้างโทเค็นที่แข็งแรงและปลอดภัย นักพัฒนาจำนวนมากเลือกใช้เฟรมเวิร์ค ERC20 ที่น่าเชื่อถือและปลอดภัยของ OpenZeppelin เป็นที่ทดสอบอย่างละเอียดและรีวิวจากชุมชนของสมุดสัญญาอัจฉริยะที่ใช้ซ้ำได้ที่ประกอบด้วยเฟรมเวิร์คโทเค็น ERC20 ที่เป็นประสิทธิภาพและปลอดภัย มันรับประกันว่าการพัฒนาโทเค็นเป็นไปตามมาตรฐานและปลอดภัย และเป็นตัวเลือกสำหรับนักพัฒนาโทเค็นหลายคนในปัจจุบัน
เพื่อความสะดวกและความปลอดภัย เราจะใช้ OpenZeppelin ERC-20สัญญาเพื่อสร้างโทเค็นของเราในคู่มือนี้ ด้วย OpenZeppelin เราไม่จำเป็นต้องเขียนอินเตอร์เฟซ ERC-20 ทั้งหมด เราเพียงแค่นำเข้าสัญญาไลบรารีและใช้ฟังก์ชันของมัน เช่นในที่นี้เราจะออก 1 ล้านโทเค็น ERC-20 ชื่อ MNT
ต่อมา ไปที่Ethereum Remixใน IDE (สภาพแวดล้อมการพัฒนาที่รวมอยู่ของ Ethereum ที่รองรับภาษาโปรแกรม Solidity) และสร้างไฟล์ Solidity ใหม่ เช่น - MyNewToken.sol
โปรดวางโค้ดต่อไปนี้ลงในสคริปต์ Solidity ใหม่ของคุณ:
SPDX-ใบอนุญาต-ตัวระบุ: MIT pragma solidity ^0.8.20;
นําเข้า "@openzeppelin/contracts/token/ERC20/ERC20.sol”;
contract MyNewToken คือ ERC20 { constructor() ERC20("MyNewToken", "MNT") { _mint(msg.sender, 1000000 (10 *uint256(decimals()))); } }
นี่คือสิ่งที่โค้ดทำ:
คำอธิบาย SPDX-License-Identifier ระบุให้เห็นถึงสัญญาอนุญาตภายใต้ที่สัญญากำหนด
คำสั่ง Pragma ระบุเวอร์ชันของคอมไพเลอร์ที่จะใช้
สัญญา ERC20 ถูกนำเข้ามาจาก OpenZeppelin และเป็นพื้นฐานสำหรับโทเค็นของคุณ
MyNewToken เป็นชื่อของสัญญาของคุณ ที่ได้รับการรับช่วงจากสัญญา ERC20
constructor function จะเริ่มต้นเหรียญของคุณด้วยชื่อ ("MyNewToken") และสัญลักษณ์ ("MNT")
ฟังก์ชัน _mint ภายใน constructor สร้างการจัดหาเหรียญเริ่มต้น ในกรณีนี้มีการจัดหาเหรียญ 1 ล้านเหรียญและมอบหมายให้กับที่อยู่ที่ติดตั้งสัญญา จำนวนเหรียญทั้งหมดจะถูกปรับตามค่าทศนิยมซึ่งมีค่าเริ่มต้นเป็น 18 ใน OpenZeppelin การนำไปใช้งาน
เนื่องจากเรานำเข้าสัญญาอัจฉริยะ ERC20 จาก OpenZeppelin และสัญญา MyNewToken ได้รับการสืบทอดมาจากมัน ไม่จำเป็นต้องนิยามฟังก์ชั่นทั้งหมดของเราเอง ฟังก์ชั่นทั้งหมดที่นิยามไว้ในสัญญา ERC20 ถูกรวมอยู่ในสัญญา MyNewToken หากคุณต้องการดูรหัส ERC-20 ที่เป็นรูปแบบที่ละเอียดมากขึ้น คุณสามารถอ้างอิงได้ที่ไฟล์นี้.
ตอนนี้ใช้เวลาสักครู่เพื่อปรับแต่งสัญญาอัจฉริยะให้เหมาะกับความต้องการของคุณ คุณยังสามารถเปลี่ยนชื่อโทเค็นและสัญลักษณ์ได้โดยแก้ไขส่วนนี้: ERC20("MyNewToken", "MNT")
เมื่อคุณได้ปรับแต่งสัญญาฉลากของคุณแล้ว ขั้นตอนต่อไปคือการคอมไพล์
ขั้นตอนที่ 1: คลิกที่ปุ่ม Solidity Compiler ตรวจสอบเวอร์ชันคอมไพเลอร์และตรวจสอบว่าเลือกสัญญาถูกต้องแล้ว โดยเนื่องจากสมาร์ทคอนแทร็กของคุณรวมถึงไลน์ pragma solidity ^0.8.20; เวอร์ชันคอมไพเลอร์ควรเป็นอย่างน้อย 0.8.20 ถัดจากนั้นคลิกที่ปุ่ม Compile MyNewToken.sol หากทุกอย่างเป็นที่เรียบร้อยแล้ว คุณจะเห็นเครื่องหมายตรวจสอบสีเขียวบนปุ่มคอมไพล์
ขั้นตอนที่ 2: นำทางไปที่แท็บ Deploy & Run Transactions ในส่วน Environment เลือกตัวเลือก Injected Provider สำหรับการฉีดยางในการใช้งานก่อนไปเตรียม MetaMask ให้ตั้งค่าเป็นเครือข่ายทดสอบ Sepolia และเลือกสัญญา MyNewToken สำหรับการใช้งาน ในที่สุดคลิกปุ่ม Deploy เพื่อใช้งานสัญญาของคุณ
หากคุณไม่แน่ใจว่าจะสลับเป็นเครือข่ายใด ๆ ให้เปิดส่วนขยาย MetaMask คลิกที่ตัวเลือกเครือข่ายที่มุมบนซ้ายและเลือก Sepolia หากไม่มีให้ตรวจสอบว่าเปิดใช้งานตัวเลือกเครือข่ายทดสอบหรือไม่ สำหรับคำแนะนำในการเพิ่ม QuickNode RPC URL ใน MetaMask โปรดตรวจสอบ คู่มือ QuickNode.
ขั้นตอนที่ 3: ยืนยันการทำธุรกรรมใน MetaMask:
Congratulations! สัญญาโทเค็นของคุณได้ถูกติดตั้งบนเครือข่ายทดสอบ Ethereum Sepolia อย่างประสบความสำเร็จแล้ว และคุณเป็นเจ้าของโทเค็นแรกของคุณแล้ว!
ภาคภูมิใจในด้านบล็อกเชนได้รับความสนใจอย่างมากจากการพัฒนาต่อเนื่องในด้านบล็อกเชน บิตคอยน์ อีเธอเรียม สกุลเงินดิจิทัล และ ICO สิ่งนี้เป็นเหตุให้ฉันเขียนบทแนะนำนี้ ซึ่งเป็นบทแรกในชุดบทความที่ออกแบบมาเพื่อช่วยให้บุคคลทั่วไปเข้าใจว่าจะใช้เทคโนโลยีบล็อกเชนและสกุลเงินดิจิทัลได้อย่างไรเพื่อสร้างแอปพลิเคชันที่มีผลงาน
ในบทแนะนำนี้ฉันมีเป้าหมายที่จะแนะนำคุณผ่านกระบวนการทั้งหมด ตั้งแต่การตั้งค่าบัญชีของคุณไปจนถึงการออกโทเค็นครั้งแรกของคุณบนเครือข่ายทดสอบ Ethereum โดยใช้สัญญาอัจฉริยะเดียวและMetamask. โทเค็นนี้จะทำหน้าที่เป็นโทเค็น ERC20 มาตรฐานบนเครือข่ายทดสอบ Ethereum ที่มีคุณสมบัติหลักที่สามารถใช้เป็นพื้นฐานหลากหลายสำหรับแอปพลิเคชันที่ซับซ้อนกว่าการโอนง่ายๆ
ก่อนที่คุณจะสร้างโทเค็น ERC20 ของคุณเอง คุณต้องเตรียมสิ่งต่อไปนี้:
ERC หมายถึง Ethereum Request for Comment โดยตัวเลข 20 คือหมายเลขการร้องขอแนะนำ วัตถุประสงค์ของ ERC-20 คือเพิ่มประสิทธิภาพให้กับเครือข่าย Ethereum นั้นเอง มันเป็นหนึ่งในมาตรฐาน ERC ที่สำคัญที่สุดและเป็นกรอบทางเทคนิคสำหรับการสร้างโทเค็นบนเหรียญบล็อกเชน Ethereum ผ่านสมาร์ทคอนแทร็กต์ ERC-20 ระบุกฎเกณฑ์ชุดหนึ่งที่โทเค็นที่พื้นฐานบน Ethereum ต้องปฏิบัติตาม กำหนดให้เป็นสินทรัพย์ที่พื้นฐานบนเหรียญบล็อกเชน ที่สามารถส่งและรับได้ มีมูลค่า ทำงานบนเหรียญบล็อกเชน Ethereum และเสียค่าแก็สในการทำธุรกรรม
ในปี 2015 นักพัฒนาชาวเยอรมันชื่อ Fabian Vogelsteller ได้มีส่วนร่วมในประวัติศาสตร์ของ Ethereum โดยการแสดงความคิดเห็นบนหน้า GitHub ของโครงการนี้ นี่เป็นความคิดเห็นครั้งที่ 20 ของเขา ในระหว่างที่เขากล่าวถึง ERC-20 ครั้งแรก ซึ่งเป็นการแนะนำในการขยายของ Ethereum รวดเร็ว ต่อมาก็มีการนำเสนอ ERC-20 เป็นตัวแก้ไขของปัญหาความยืดหยุ่นของเครือข่าย
การยอมรับและการนำมาใช้งานอย่างเป็นทางการของ ERC-20 ในฐานะเสนอแนะการปรับปรุง Ethereum (EIP-20) ที่ร่วมมือกับ Vogelsteller และ Ethereum ร่วมก่อตั้ง Vitalik Buterin เกิดขึ้นที่สิ้นปี 2017
ก่อนมาตรฐาน ERC-20 ผู้สร้างโทเค็นต้องเริ่มต้นจากศูนย์ซึ่งส่งผลให้มีความไม่สม่ำเสมอในต่างๆโทเค็น นักพัฒนาต้องเข้าใจโค้ดสมาร์ทคอนแทรคของโทเค็นอื่นๆอย่างเต็มที่เนื่องจากขาดโครงสร้างมาตรฐาน ทำให้กระเป๋าเงินและพื้นที่ซื้อขายต้องตรวจสอบโค้ดของโทเค็นแต่ละตัวเพื่อรองรับ การเพิ่มโทเค็นใหม่ในแอปพลิเคชันกลายเป็นงานที่ซับซ้อน
ด้วยการเปิดตัวมาตรฐาน ERC-20 คุณสมบัติที่เป็นมาตรฐานการทํางานร่วมกันและความสามารถในการถ่ายโอนทําให้กระเป๋าเงินและการแลกเปลี่ยนสามารถรวมโทเค็นหลายตัวและอํานวยความสะดวกในการแลกเปลี่ยนระหว่างกันได้อย่างง่ายดาย สัญญาอัจฉริยะที่ใช้ในโทเค็น ERC-20 สามารถดําเนินการและบังคับใช้ธุรกรรมทางการเงินที่ซับซ้อนได้โดยอัตโนมัติ ซึ่งจําเป็นสําหรับแพลตฟอร์ม DeFi บนแพลตฟอร์มเหล่านี้โทเค็นสามารถแสดงเครื่องมือทางการเงินต่างๆเช่นเงินกู้หรือหุ้นในกลุ่มสภาพคล่อง
มาตรฐาน ERC-20 ระบุหกฟังก์ชั่นบังคับและสามฟังก์ชั่นที่เลือกได้ที่สัญญาอัจฉริยะต้องดำเนินการด้วย
นี่คือฟังก์ชันที่ต้องการและคำอธิบายของคุณลักษณะ:
นอกจากฟังก์ชันพื้นฐานที่กล่าวถึงไว้ก่อนหน้านี้ ยังมีฟังก์ชันทางเลือกเพิ่มเติมที่สามารถเพิ่มประสิทธิภาพการใช้งานโทเค็น
หากคุณคุ้นเคยกับโปรแกรมเชิงวัตถุ คุณสามารถคิดเกี่ยวกับ ERC-20 เป็นอินเตอร์เฟซ หากต้องการทำให้โทเค็นของคุณกลายเป็นโทเค็น ERC-20 คุณต้องปรับใช้อินเตอร์เฟซ ERC-20 ซึ่งต้องการให้คุณรวมฟังก์ชันหลักหกฟังก์ชันเหล่านี้ โดยพื้นฐานแล้ว อินเตอร์เฟซ ERC-20 ทำหน้าที่เป็นแม่แบบ และสัญญาใดๆ ที่ต้องการจะจัดลำดับเป็นโทเค็น ERC-20 จะต้องออกแบบและปรับใช้ฟังก์ชันของตนโดยใช้แม่แบบนี้
เพื่อเริ่มต้นการ implement สัญญาของคุณบนเครือข่ายทดสอบ Ethereum Sepolia คุณต้องทำการติดตั้ง MetaMaskส่วนขยายบราวเซอร์หรือใช้วอลเล็ต Web3 อื่น ๆ เช่น Phantom หรือวอลเล็ตใด ๆ ที่เข้ากันได้กับ WalletConnect หลังจากตั้งค่าวอลเล็ตของคุณแล้ว คุณจะต้องได้รับ ETH ทดสอบบางส่วน คุณสามารถได้รับจากEthereum Sepolia Faucetซึ่งออกแบบมาเฉพาะสำหรับ Ethereum Sepolia test network การรับ ETH เพื่อทดสอบเป็นเรื่องง่ายดาย: แค่ไปที่เว็บไซต์ faucet, เชื่อมต่อที่อยู่กระเป๋าเงินหรือป้อนที่อยู่ของคุณและทำตามคำแนะนำ คุณยังสามารถแชร์ทวีตเพื่อรับรางวัลพิเศษได้ หรือคุณสามารถเลือกตัวเลือก “ไม่ขอบคุณ แค่ส่ง 0.05 ETH ถึงฉันได้เลย” เพื่อรับ ETH ทดสอบของคุณโดยตรง อย่างไรก็ตาม โปรดจำไว้ว่าคุณต้องมีอย่างน้อย 0.001 ETH ในบัญชี Ethereum mainnet เพื่อใช้ QuickNode test coin faucet
ในปัจจุบันมีโทเค็นจำนวนมากที่เป็นไปตามมาตรฐาน ERC20 ที่ทำงานบนบล็อกเชน Ethereum ซึ่งได้รับการพัฒนาโดยกลุ่มต่าง ๆ การประยุกต์ใช้เหล่านี้แตกต่างกัน บางส่วนเน้นการลดค่าแก๊สในขณะที่อื่นส่วนใหญ่เน้นการเพิ่มความปลอดภัย เพื่อสร้างโทเค็นที่แข็งแรงและปลอดภัย นักพัฒนาจำนวนมากเลือกใช้เฟรมเวิร์ค ERC20 ที่น่าเชื่อถือและปลอดภัยของ OpenZeppelin เป็นที่ทดสอบอย่างละเอียดและรีวิวจากชุมชนของสมุดสัญญาอัจฉริยะที่ใช้ซ้ำได้ที่ประกอบด้วยเฟรมเวิร์คโทเค็น ERC20 ที่เป็นประสิทธิภาพและปลอดภัย มันรับประกันว่าการพัฒนาโทเค็นเป็นไปตามมาตรฐานและปลอดภัย และเป็นตัวเลือกสำหรับนักพัฒนาโทเค็นหลายคนในปัจจุบัน
เพื่อความสะดวกและความปลอดภัย เราจะใช้ OpenZeppelin ERC-20สัญญาเพื่อสร้างโทเค็นของเราในคู่มือนี้ ด้วย OpenZeppelin เราไม่จำเป็นต้องเขียนอินเตอร์เฟซ ERC-20 ทั้งหมด เราเพียงแค่นำเข้าสัญญาไลบรารีและใช้ฟังก์ชันของมัน เช่นในที่นี้เราจะออก 1 ล้านโทเค็น ERC-20 ชื่อ MNT
ต่อมา ไปที่Ethereum Remixใน IDE (สภาพแวดล้อมการพัฒนาที่รวมอยู่ของ Ethereum ที่รองรับภาษาโปรแกรม Solidity) และสร้างไฟล์ Solidity ใหม่ เช่น - MyNewToken.sol
โปรดวางโค้ดต่อไปนี้ลงในสคริปต์ Solidity ใหม่ของคุณ:
SPDX-ใบอนุญาต-ตัวระบุ: MIT pragma solidity ^0.8.20;
นําเข้า "@openzeppelin/contracts/token/ERC20/ERC20.sol”;
contract MyNewToken คือ ERC20 { constructor() ERC20("MyNewToken", "MNT") { _mint(msg.sender, 1000000 (10 *uint256(decimals()))); } }
นี่คือสิ่งที่โค้ดทำ:
คำอธิบาย SPDX-License-Identifier ระบุให้เห็นถึงสัญญาอนุญาตภายใต้ที่สัญญากำหนด
คำสั่ง Pragma ระบุเวอร์ชันของคอมไพเลอร์ที่จะใช้
สัญญา ERC20 ถูกนำเข้ามาจาก OpenZeppelin และเป็นพื้นฐานสำหรับโทเค็นของคุณ
MyNewToken เป็นชื่อของสัญญาของคุณ ที่ได้รับการรับช่วงจากสัญญา ERC20
constructor function จะเริ่มต้นเหรียญของคุณด้วยชื่อ ("MyNewToken") และสัญลักษณ์ ("MNT")
ฟังก์ชัน _mint ภายใน constructor สร้างการจัดหาเหรียญเริ่มต้น ในกรณีนี้มีการจัดหาเหรียญ 1 ล้านเหรียญและมอบหมายให้กับที่อยู่ที่ติดตั้งสัญญา จำนวนเหรียญทั้งหมดจะถูกปรับตามค่าทศนิยมซึ่งมีค่าเริ่มต้นเป็น 18 ใน OpenZeppelin การนำไปใช้งาน
เนื่องจากเรานำเข้าสัญญาอัจฉริยะ ERC20 จาก OpenZeppelin และสัญญา MyNewToken ได้รับการสืบทอดมาจากมัน ไม่จำเป็นต้องนิยามฟังก์ชั่นทั้งหมดของเราเอง ฟังก์ชั่นทั้งหมดที่นิยามไว้ในสัญญา ERC20 ถูกรวมอยู่ในสัญญา MyNewToken หากคุณต้องการดูรหัส ERC-20 ที่เป็นรูปแบบที่ละเอียดมากขึ้น คุณสามารถอ้างอิงได้ที่ไฟล์นี้.
ตอนนี้ใช้เวลาสักครู่เพื่อปรับแต่งสัญญาอัจฉริยะให้เหมาะกับความต้องการของคุณ คุณยังสามารถเปลี่ยนชื่อโทเค็นและสัญลักษณ์ได้โดยแก้ไขส่วนนี้: ERC20("MyNewToken", "MNT")
เมื่อคุณได้ปรับแต่งสัญญาฉลากของคุณแล้ว ขั้นตอนต่อไปคือการคอมไพล์
ขั้นตอนที่ 1: คลิกที่ปุ่ม Solidity Compiler ตรวจสอบเวอร์ชันคอมไพเลอร์และตรวจสอบว่าเลือกสัญญาถูกต้องแล้ว โดยเนื่องจากสมาร์ทคอนแทร็กของคุณรวมถึงไลน์ pragma solidity ^0.8.20; เวอร์ชันคอมไพเลอร์ควรเป็นอย่างน้อย 0.8.20 ถัดจากนั้นคลิกที่ปุ่ม Compile MyNewToken.sol หากทุกอย่างเป็นที่เรียบร้อยแล้ว คุณจะเห็นเครื่องหมายตรวจสอบสีเขียวบนปุ่มคอมไพล์
ขั้นตอนที่ 2: นำทางไปที่แท็บ Deploy & Run Transactions ในส่วน Environment เลือกตัวเลือก Injected Provider สำหรับการฉีดยางในการใช้งานก่อนไปเตรียม MetaMask ให้ตั้งค่าเป็นเครือข่ายทดสอบ Sepolia และเลือกสัญญา MyNewToken สำหรับการใช้งาน ในที่สุดคลิกปุ่ม Deploy เพื่อใช้งานสัญญาของคุณ
หากคุณไม่แน่ใจว่าจะสลับเป็นเครือข่ายใด ๆ ให้เปิดส่วนขยาย MetaMask คลิกที่ตัวเลือกเครือข่ายที่มุมบนซ้ายและเลือก Sepolia หากไม่มีให้ตรวจสอบว่าเปิดใช้งานตัวเลือกเครือข่ายทดสอบหรือไม่ สำหรับคำแนะนำในการเพิ่ม QuickNode RPC URL ใน MetaMask โปรดตรวจสอบ คู่มือ QuickNode.
ขั้นตอนที่ 3: ยืนยันการทำธุรกรรมใน MetaMask:
Congratulations! สัญญาโทเค็นของคุณได้ถูกติดตั้งบนเครือข่ายทดสอบ Ethereum Sepolia อย่างประสบความสำเร็จแล้ว และคุณเป็นเจ้าของโทเค็นแรกของคุณแล้ว!