Kontrak Pintar Rantaian Blok dengan Solidity · Pelajaran

Piawaian Token Boleh Ganti ERC-20

Fahami spesifikasi dan fungsi piawaian ERC-20 untuk mencipta token yang boleh ditukar ganti.

Pelajaran 1 daripada 412 langkah

Piawaian Token Boleh Ganti ERC-20 ialah pelajaran Kontrak Pintar Rantaian Blok dengan Solidity percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kontrak Pintar Rantaian Blok dengan Solidity, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kontrak Pintar Rantaian Blok dengan Solidity merangkumi sejumlah 4 pelajaran.

Pengenalan kepada Token Rantaian Blok

Selamat datang ke dunia token rantaian blok! Selain mata wang kripto seperti Ether, rantaian blok menempatkan pelbagai aset digital lain.

Aset ini, yang sering dipanggil 'token', boleh mewakili apa-apa sahaja daripada mata wang digital hingga pemilikan barangan dunia sebenar, malah hak mengundi dalam organisasi terpencar.

Kebolehgantian: Aset yang Boleh Ditukar Ganti

Satu konsep penting bagi token ialah kebolehgantian. Apakah maksudnya?

  • Boleh ganti: Setiap unit adalah sama dan boleh ditukar dengan unit lain. Seperti wang kertas satu dolar – sekeping wang kertas $1 sama seperti mana-mana wang kertas $1 yang lain.
  • Tidak boleh ganti: Setiap unit adalah unik dan tidak boleh digantikan dengan unit lain. Seperti karya seni atau rumah tertentu.

Token ERC-20 boleh ganti, bermakna setiap token adalah sama dengan token lain daripada jenis yang sama.

Kenali Piawaian ERC-20

ERC-20 (Ethereum Request for Comment 20) ialah piawaian teknikal untuk token boleh ganti pada rantaian blok Ethereum.

Ia mentakrifkan set peraturan umum yang mesti dipatuhi oleh semua token yang mematuhinya. Ini memastikan token tersebut boleh berinteraksi dengan lancar dengan dompet, bursa dan kontrak pintar lain.

Kebolehoperasian Melalui Piawaian

Mengapakah piawaian begitu penting?

  • Keserasian: Mana-mana dompet yang menyokong ERC-20 boleh menguruskan mana-mana token ERC-20.
  • Pertumbuhan Ekosistem: Aplikasi terpencar (dApps) boleh mengintegrasikan token yang berbeza dengan mudah.
  • Tingkah Laku yang Boleh Dijangka: Pembangun mengetahui dengan tepat cara token ERC-20 akan bertindak, menjadikan pengintegrasian lebih selamat dan pantas.

Fungsi Teras: `totalSupply()`

Fungsi totalSupply() mengembalikan jumlah keseluruhan token yang wujud. Ia ialah fungsi view awam, bermakna fungsi ini tidak mengubah keadaan rantaian blok dan tidak memerlukan gas untuk dipanggil.

Cuba jalankan kontrak mudah ini untuk melihat cara totalSupply mungkin diwakili:

pragma solidity ^0.8.0;

contract SimpleTokenInfo {
    uint256 public totalTokens = 1000; // Example supply

    function totalSupply() public view returns (uint256) {
        return totalTokens;
    }
}

Fungsi Teras: `balanceOf()`

Fungsi balanceOf(address account) mengembalikan baki token bagi alamat tertentu. Fungsi ini membantu anda menyemak jumlah token yang dimiliki oleh seseorang pengguna.

Mari tambahkan balanceOf pada contoh kita. Penerap akan bermula dengan semua token.

pragma solidity ^0.8.0;

contract SimpleTokenInfo {
    uint256 public totalTokens = 1000;
    mapping(address => uint256) public balances;

    constructor() {
        balances[msg.sender] = totalTokens; // Assign all to deployer
    }

    function totalSupply() public view returns (uint256) {
        return totalTokens;
    }

    function balanceOf(address account) public view returns (uint256) {
        return balances[account];
    }
}

Fungsi Teras: `transfer()`

Fungsi transfer(address recipient, uint256 amount) membolehkan pengirim transaksi menghantar token secara langsung ke alamat lain.

Ini ialah cara yang paling biasa untuk memindahkan token antara pengguna.

pragma solidity ^0.8.0;

contract SimpleTokenInfo {
    uint256 public totalTokens = 1000;
    mapping(address => uint256) public balances;

    constructor() {
        balances[msg.sender] = totalTokens;
    }

    function totalSupply() public view returns (uint256) {
        return totalTokens;
    }

    function balanceOf(address account) public view returns (uint256) {
        return balances[account];
    }

    function transfer(address recipient, uint256 amount) public returns (bool) {
        require(balances[msg.sender] >= amount, "Insufficient balance");
        balances[msg.sender] -= amount;
        balances[recipient] += amount;
        return true;
    }
}

Pemindahan Diwakilkan: `approve()` & `allowance()`

ERC-20 juga menyokong pemindahan diwakilkan, iaitu seorang pengguna (si owner) membenarkan alamat lain (si spender) memindahkan token bagi pihaknya.

  • approve(address spender, uint256 amount): Pemilik memberikan kebenaran kepada pembelanja untuk mengeluarkan amount token tertentu.
  • allowance(address owner, address spender): Mengembalikan jumlah token yang sedang dibenarkan untuk dikeluarkan oleh spender daripada owner.

Melaksanakan Pemindahan Diwakilkan: `transferFrom()`

Selepas panggilan approve() dibuat, spender yang ditetapkan boleh menggunakan fungsi transferFrom().

transferFrom(address sender, address recipient, uint256 amount): Membolehkan pembelanja memindahkan amount token daripada baki sender kepada recipient, dengan syarat pembelanja mempunyai allowance yang mencukupi daripada sender.

Menjejaki Tindakan: Peristiwa ERC-20

ERC-20 mentakrifkan dua peristiwa standard: Transfer dan Approval. Peristiwa ini penting bagi aplikasi luar rantaian (seperti dompet atau peneroka rantaian blok) untuk menjejaki pergerakan dan kelulusan token tanpa perlu membaca keseluruhan keadaan rantaian blok.

Peristiwa tersebut menghasilkan log yang boleh diindeks dan ditanya dengan cekap.

pragma solidity ^0.8.0;

contract EventExample {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    function demonstrateTransferEvent(address _to, uint256 _value) public {
        // Imagine actual transfer logic here
        emit Transfer(msg.sender, _to, _value);
    }

    function demonstrateApprovalEvent(address _spender, uint256 _value) public {
        // Imagine actual approval logic here
        emit Approval(msg.sender, _spender, _value);
    }
}

Semak Pemahaman Anda

Piawaian ERC-20 menerangkan fungsi khusus yang mesti dilaksanakan oleh semua token yang mematuhinya. Memahami fungsi ini amat penting untuk bekerja dengan token.

ERC-20: Pelan Tindakan Token Anda

Anda kini telah mempelajari Piawaian Token Boleh Ganti ERC-20! Piawaian ini menjadi pelan asas bagi kebanyakan token boleh tukar ganti di Ethereum.

  • Ia mentakrifkan fungsi teras seperti totalSupply(), balanceOf() dan transfer().
  • Ia membolehkan pemindahan diwakilkan dengan approve(), allowance() dan transferFrom().
  • Peristiwa standard Transfer dan Approval membantu menjejaki aktiviti token.

Piawaian ini memastikan semua token ERC-20 serasi, menjadikan ekosistem Ethereum kukuh dan mudah diterokai. Seterusnya, kita akan mempelajari cara melaksanakan token ERC-20 anda sendiri!

Percuma untuk bermula

Pelajari Kontrak Pintar Rantaian Blok dengan Solidity dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
12
Pelajaran
48

Soalan Lazim

Adakah pelajaran “Piawaian Token Boleh Ganti ERC-20” percuma?

Ya — teks penuh “Piawaian Token Boleh Ganti ERC-20” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Kontrak Pintar Rantaian Blok dengan Solidity, tingkat taraf kepada CoddyKit PRO. Kursus Kontrak Pintar Rantaian Blok dengan Solidity merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Piawaian Token Boleh Ganti ERC-20”?

Fahami spesifikasi dan fungsi piawaian ERC-20 untuk mencipta token yang boleh ditukar ganti. Anda berlatih Kontrak Pintar Rantaian Blok dengan Solidity menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Kontrak Pintar Rantaian Blok dengan Solidity?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Kontrak Pintar Rantaian Blok dengan Solidity di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Piawaian Token Boleh Ganti ERC-20” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kontrak Pintar Rantaian Blok dengan Solidity ini?

Ya. Setiap pelajaran Kontrak Pintar Rantaian Blok dengan Solidity menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Piawaian Token Boleh Ganti ERC-20
  2. Melaksanakan Token ERC-20
  3. Token Tidak Boleh Ganti ERC-721 (NFT)
  4. Piawaian Berbilang Token ERC-1155
← Kembali ke Kontrak Pintar Rantaian Blok dengan Solidity