Rumah > hujung hadapan web > tutorial js > Kursus Kemalangan Solidity - Bahagian Kontrak Pintar

Kursus Kemalangan Solidity - Bahagian Kontrak Pintar

DDD
Lepaskan: 2025-01-29 22:33:14
asal
857 orang telah melayarinya

Solidity Crash Course - Part  Smart Contracts

Kursus Kelajuan Solidity -Part 2: Kontrak Pintar

Pengenalan

Solidity adalah bahasa pengaturcaraan peringkat tinggi yang digunakan untuk menulis kontrak pintar di blok Ethereum. Ia dipengaruhi oleh JavaScript, Python, dan C. Dalam bahagian ini kursus kelajuan ini, kami akan memperkenalkan tatabahasa asas kontrak solidity dan bagaimana menulis kontrak pintar.

Solidity -Contract Grammar


Kontrak Solidity adalah koleksi kod (fungsi) dan data (status), dan alamat khusus yang tinggal di blok Ethereum. Setiap kontrak kepantasan bermula dengan pernyataan versi, yang menentukan versi versi pengkompil. 1. Struktur asas kontrak solidity

penguraian kod

Lesen SPDX-License-identifier

<code class="language-solidity">// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract MyFirstContract {
    // 状态变量
    uint public myNumber;
    string public myString;

    // 构造函数 - 合约部署时仅运行一次
    constructor(uint _myNumber, string memory _myString) {
        myNumber = _myNumber;
        myString = _myString;
    }

    // 更新数字的函数
    function setNumber(uint _newNumber) public {
        myNumber = _newNumber;
    }

    // 更新字符串的函数
    function setString(string memory _newString) public {
        myString = _newString;
    }
}</code>
Salin selepas log masuk
-d untuk menentukan kontrak.

Arahan Pragma
    -de Penggunaan Solidity 0.8.0 atau versi kontrak yang lebih tinggi.
  1. Penyata Kontrak -
  2. mentakrifkan kontrak.
  3. pembolehubah status -
  4. dan
  5. data tahan lama pada blok penyimpanan blockchain. Membina fungsi contract MyFirstContract {} -The keadaan permulaan kontrak semasa penempatan.
  6. Fungsi awam - dan uint berfungsi untuk mengubah keadaan kontrak. string
  7. Kontrak Solidity -Smart
  8. Kontrak pintar adalah kontrak yang dilaksanakan sendiri dengan peraturan yang telah ditetapkan. Selepas penempatan, ia berinteraksi dengan pengguna dan kontrak lain. setNumber 2. Tulis kontrak pintar mudah setString
  9. Berikut adalah contoh kontrak pintar yang membolehkan pengguna menyimpan dan mengambil nombor kegemaran mereka.

Penjelasan Insiden

-inned untuk merekodkan interaksi kontrak pada blockchain.

Fungsi awam

-Make pengguna untuk menyimpan nombor.

Lihat Fungsi

-in nombor storan yang diambil tanpa mengubah suai blockchain.
<code class="language-solidity">// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract FavoriteNumber {
    uint private favoriteNumber;

    // 当数字更改时通知的事件
    event NumberUpdated(uint newNumber);

    // 设置喜欢的数字的函数
    function setFavoriteNumber(uint _number) public {
        favoriteNumber = _number;
        emit NumberUpdated(_number);
    }

    // 获取喜欢的数字的函数
    function getFavoriteNumber() public view returns (uint) {
        return favoriteNumber;
    }
}</code>
Salin selepas log masuk

Kalimat
    -Buat Acara ketika mengemas kini nombor.
  1. menggunakan kontrak
  2. setFavoriteNumber Untuk menggunakan kontrak, anda boleh menggunakan Remix IDE
  3. atau
  4. hardhat . getFavoriteNumber Gunakan Remix IDE untuk menggunakan
  5. Pergi ke Remix IDE. emit Salin dan tampal kontrak solidity dan tampal ke dalam fail baru.
Gunakan pengkompil solidity untuk menyusun kontrak.

Gunakan persekitaran Web3 yang disuntik (metamask) untuk menggunakannya. Gunakan fungsi yang digunakan untuk berinteraksi dengan kontrak.

Jika anda perlu menggunakan bantuan, sila maklumkan! Kesimpulan

Dalam bahagian ini, kami memperkenalkan tatabahasa kontrak asas dan mewujudkan kontrak pintar yang mudah.
  1. Sila nantikan bahagian ketiga!

Atas ialah kandungan terperinci Kursus Kemalangan Solidity - Bahagian Kontrak Pintar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan