Ethereum প্ল্যাটফর্মে একটি Smart Contract তৈরি

Latest Technologies - ব্লকচেইন (Blockchain) - প্র্যাকটিস প্রোজেক্টস | NCTB BOOK

Ethereum প্ল্যাটফর্মে একটি Smart Contract তৈরি করা বেশ সহজ, এবং এটি Solidity প্রোগ্রামিং ভাষা ব্যবহার করে করা হয়। Solidity হলো Ethereum Virtual Machine (EVM)-এর জন্য একটি উচ্চ স্তরের ভাষা, যা Smart Contract ডেভেলপমেন্টের জন্য খুবই জনপ্রিয়। নিচে একটি basic smart contract তৈরির স্টেপ-বাই-স্টেপ গাইড এবং উদাহরণ দেওয়া হলো।

প্রয়োজনীয় টুলস:

  1. Solidity: Solidity ভাষা ব্যবহার করে Smart Contract লেখা হয়।
  2. Remix IDE: এটি একটি ব্রাউজার-ভিত্তিক IDE, যা Solidity Smart Contract ডেভেলপমেন্টের জন্য খুবই উপযোগী।
  3. MetaMask: Ethereum Wallet হিসেবে ব্যবহার করা হয়, যা ডেসেন্ট্রালাইজড অ্যাপ্লিকেশনের সাথে সংযোগ স্থাপন করে এবং Smart Contract ডিপ্লয় করতে সাহায্য করে।

Smart Contract তৈরির স্টেপস:

Step 1: Remix IDE-তে Smart Contract লিখুন

Remix IDE খুলুন:

  • Remix IDE এ যান।
  • এটি একটি ব্রাউজার-ভিত্তিক প্ল্যাটফর্ম যেখানে আপনি সহজেই Solidity কোড লিখতে এবং ডিপ্লয় করতে পারবেন।

নতুন ফাইল তৈরি করুন:

  • contracts ফোল্ডারে একটি নতুন ফাইল তৈরি করুন, যেমন SimpleStorage.sol

Smart Contract-এর কোড লিখুন:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

// SimpleStorage নামের একটি Smart Contract তৈরি করা হলো
contract SimpleStorage {
    // একটি পূর্ণসংখ্যা (integer) ভ্যারিয়েবল তৈরি করা হয়েছে
    uint256 public storedData;

    // ডেটা সেট করার জন্য একটি ফাংশন
    function set(uint256 x) public {
        storedData = x;
    }

    // ডেটা রিড করার জন্য একটি ফাংশন
    function get() public view returns (uint256) {
        return storedData;
    }
}

কোডের ব্যাখ্যা:

  • pragma solidity ^0.8.0: এটি Solidity কম্পাইলারের জন্য ভার্সন নির্দেশ করে।
  • contract SimpleStorage: এটি একটি SimpleStorage নামের Smart Contract।
  • uint256 public storedData: এখানে একটি storedData নামের ভ্যারিয়েবল ডিক্লেয়ার করা হয়েছে, যা public এবং blockchain-এ সংরক্ষিত থাকবে।
  • set(uint256 x): এই ফাংশনটি storedData ভ্যারিয়েবলের মান সেট করে।
  • get(): এটি একটি view ফাংশন, যা storedData-এর মান রিটার্ন করে।

Step 2: Contract কম্পাইল করুন

  1. Solidity Compiler সিলেক্ট করুন:
    • Remix-এর বাম পাশের মেনুতে Solidity Compiler অপশন সিলেক্ট করুন।
    • Solidity ভার্সন (যেমন 0.8.0) সিলেক্ট করুন এবং Compile SimpleStorage.sol বাটনে ক্লিক করুন।
  2. কম্পাইলেশনের ত্রুটি থাকলে ঠিক করুন:
    • কোডে যদি কোনো ত্রুটি থাকে, তা ঠিক করুন এবং আবার কম্পাইল করুন।

Step 3: Smart Contract ডিপ্লয় করুন

  1. Deploy & Run Transactions প্যানেল সিলেক্ট করুন:
    • Remix-এর বাম পাশের মেনুতে Deploy & Run Transactions অপশন সিলেক্ট করুন।
    • Environment হিসেবে JavaScript VM (London) সিলেক্ট করুন (এটি একটি ডিফল্ট Ethereum টেস্ট নেটওয়ার্ক)।
  2. ডিপ্লয় বাটন চাপুন:
    • Deploy বাটনে ক্লিক করুন। এটি আপনার contract কে টেস্ট নেটওয়ার্কে ডিপ্লয় করবে।
  3. Deployed Contracts সেকশন চেক করুন:
    • নিচে একটি নতুন সেকশন দেখাবে যেখানে আপনার ডিপ্লয় করা contract থাকবে। সেখান থেকে set এবং get ফাংশনগুলো অ্যাক্সেস করা যাবে।

Step 4: Smart Contract ইন্টারঅ্যাকশন

  1. Data Set করা:
    • set ফাংশনের বক্সে একটি সংখ্যা প্রবেশ করান, যেমন 10, এবং transact বাটনে ক্লিক করুন। এটি storedData-এর মান 10 সেট করবে।
  2. Data রিড করা:
    • get বাটনে ক্লিক করুন। এটি storedData-এর বর্তমান মান দেখাবে, যা আপনি set ফাংশনের মাধ্যমে সেট করেছিলেন।

Step 5: MetaMask ব্যবহার করে Contract ডিপ্লয় (প্রকৃত নেটওয়ার্কে)

  • Remix-এ Environment হিসেবে Injected Web3 সিলেক্ট করুন, এবং MetaMask-এর সাথে কানেক্ট করুন।
  • এরপর প্রয়োজনীয় নেটওয়ার্ক (যেমন Goerli Test Network) সিলেক্ট করে Deploy বাটনে ক্লিক করুন। MetaMask-এর মাধ্যমে ট্রানজ্যাকশন অনুমোদন করুন।
Content added By
Promotion