Ethereum প্ল্যাটফর্মে একটি Smart Contract তৈরি করা বেশ সহজ, এবং এটি Solidity প্রোগ্রামিং ভাষা ব্যবহার করে করা হয়। Solidity হলো Ethereum Virtual Machine (EVM)-এর জন্য একটি উচ্চ স্তরের ভাষা, যা Smart Contract ডেভেলপমেন্টের জন্য খুবই জনপ্রিয়। নিচে একটি basic smart contract তৈরির স্টেপ-বাই-স্টেপ গাইড এবং উদাহরণ দেওয়া হলো।
প্রয়োজনীয় টুলস:
- Solidity: Solidity ভাষা ব্যবহার করে Smart Contract লেখা হয়।
- Remix IDE: এটি একটি ব্রাউজার-ভিত্তিক IDE, যা Solidity Smart Contract ডেভেলপমেন্টের জন্য খুবই উপযোগী।
- 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 কম্পাইল করুন
- Solidity Compiler সিলেক্ট করুন:
- Remix-এর বাম পাশের মেনুতে
Solidity Compilerঅপশন সিলেক্ট করুন। - Solidity ভার্সন (যেমন
0.8.0) সিলেক্ট করুন এবংCompile SimpleStorage.solবাটনে ক্লিক করুন।
- Remix-এর বাম পাশের মেনুতে
- কম্পাইলেশনের ত্রুটি থাকলে ঠিক করুন:
- কোডে যদি কোনো ত্রুটি থাকে, তা ঠিক করুন এবং আবার কম্পাইল করুন।
Step 3: Smart Contract ডিপ্লয় করুন
- Deploy & Run Transactions প্যানেল সিলেক্ট করুন:
- Remix-এর বাম পাশের মেনুতে
Deploy & Run Transactionsঅপশন সিলেক্ট করুন। EnvironmentহিসেবেJavaScript VM (London)সিলেক্ট করুন (এটি একটি ডিফল্ট Ethereum টেস্ট নেটওয়ার্ক)।
- Remix-এর বাম পাশের মেনুতে
- ডিপ্লয় বাটন চাপুন:
Deployবাটনে ক্লিক করুন। এটি আপনার contract কে টেস্ট নেটওয়ার্কে ডিপ্লয় করবে।
- Deployed Contracts সেকশন চেক করুন:
- নিচে একটি নতুন সেকশন দেখাবে যেখানে আপনার ডিপ্লয় করা contract থাকবে। সেখান থেকে
setএবংgetফাংশনগুলো অ্যাক্সেস করা যাবে।
- নিচে একটি নতুন সেকশন দেখাবে যেখানে আপনার ডিপ্লয় করা contract থাকবে। সেখান থেকে
Step 4: Smart Contract ইন্টারঅ্যাকশন
- Data Set করা:
setফাংশনের বক্সে একটি সংখ্যা প্রবেশ করান, যেমন10, এবংtransactবাটনে ক্লিক করুন। এটিstoredData-এর মান10সেট করবে।
- Data রিড করা:
getবাটনে ক্লিক করুন। এটিstoredData-এর বর্তমান মান দেখাবে, যা আপনিsetফাংশনের মাধ্যমে সেট করেছিলেন।
Step 5: MetaMask ব্যবহার করে Contract ডিপ্লয় (প্রকৃত নেটওয়ার্কে)
- Remix-এ
EnvironmentহিসেবেInjected Web3সিলেক্ট করুন, এবং MetaMask-এর সাথে কানেক্ট করুন। - এরপর প্রয়োজনীয় নেটওয়ার্ক (যেমন Goerli Test Network) সিলেক্ট করে
Deployবাটনে ক্লিক করুন। MetaMask-এর মাধ্যমে ট্রানজ্যাকশন অনুমোদন করুন।
Content added By
Read more