ஸ்மார்ட் ஒப்பந்த நூலகங்கள்
பக்கத்தின் கடைசி புதுப்பிப்பு: 21 ஆகஸ்ட், 2025
உங்கள் திட்டத்தில் உள்ள ஒவ்வொரு ஸ்மார்ட் ஒப்பந்தத்தையும் நீங்கள் புதிதாக எழுதத் தேவையில்லை. பல திறந்த மூல ஸ்மார்ட் ஒப்பந்த நூலகங்கள் உள்ளன, அவை உங்கள் திட்டத்திற்கு மீண்டும் பயன்படுத்தக்கூடிய கட்டமைப்புக் கூறுகளை வழங்குகின்றன, இது நீங்கள் மீண்டும் புதிதாக அனைத்தையும் செய்வதிலிருந்து உங்களைக் காப்பாற்றும்.
முன்னேற்றக் கட்டுரை
ஸ்மார்ட் ஒப்பந்த நூலகங்களுக்குள் செல்வதற்கு முன், ஸ்மார்ட் ஒப்பந்தத்தின் கட்டமைப்பைப் பற்றி நன்கு புரிந்துகொள்வது நல்லது. நீங்கள் இன்னும் அவ்வாறு செய்யவில்லை என்றால், ஸ்மார்ட் ஒப்பந்த உடற்கூறியல் பகுதிக்குச் செல்லவும்.
ஒரு நூலகத்தில் என்ன இருக்கிறது
ஸ்மார்ட் ஒப்பந்த நூலகங்களில் நீங்கள் வழக்கமாக இரண்டு வகையான கட்டமைப்புக் கூறுகளைக் காணலாம்: உங்கள் ஒப்பந்தங்களில் நீங்கள் சேர்க்கக்கூடிய மீண்டும் பயன்படுத்தக்கூடிய செயல்பாடுகள் மற்றும் பல்வேறு தரநிலைகளின் செயலாக்கங்கள்.
செயல்பாடுகள்
ஸ்மார்ட் ஒப்பந்தங்களை எழுதும்போது, ஒரு ஒப்பந்தத்தில் பாதுகாக்கப்பட்ட செயல்பாடுகளைச் செய்வதற்கு நிர்வாகி முகவரியை ஒதுக்குவது அல்லது எதிர்பாராத சிக்கல் ஏற்பட்டால் அவசரகால இடைநிறுத்த பொத்தானைச் சேர்ப்பது போன்ற ஒரே மாதிரியான வடிவங்களை நீங்கள் மீண்டும் மீண்டும் எழுதுவதற்கான நல்ல வாய்ப்பு உள்ளது.
ஸ்மார்ட் ஒப்பந்த நூலகங்கள் பொதுவாக இந்தச் செயல்பாடுகளின் மறுபயன்பாட்டுக்குரிய செயலாக்கங்களை சொலிடிட்டியில் உள்ள நூலகங்கள் (opens in a new tab) அல்லது மரபுரிமை (opens in a new tab) வழியாக வழங்குகின்றன.
உதாரணமாக, OpenZeppelin Contracts library (opens in a new tab) இலிருந்து Ownable ஒப்பந்தத்தின் (opens in a new tab) எளிமைப்படுத்தப்பட்ட பதிப்பு கீழே கொடுக்கப்பட்டுள்ளது. இது ஒரு ஒப்பந்தத்தின் உரிமையாளராக ஒரு முகவரியை நியமிக்கிறது, மேலும் அந்த உரிமையாளருக்கு மட்டுமே ஒரு முறைக்கான அணுகலைக் கட்டுப்படுத்த ஒரு மாற்றியை வழங்குகிறது.
1contract Ownable {2 address public owner;34 constructor() internal {5 owner = msg.sender;6 }78 modifier onlyOwner() {9 require(owner == msg.sender, "Ownable: அழைப்பவர் உரிமையாளர் அல்ல");10 _;11 }12}அனைத்தையும் காட்டுஉங்கள் ஒப்பந்தத்தில் இது போன்ற ஒரு கட்டமைப்புக் கூறினைப் பயன்படுத்த, நீங்கள் முதலில் அதை இறக்குமதி செய்ய வேண்டும், பின்னர் உங்கள் சொந்த ஒப்பந்தங்களில் அதை நீட்டிக்க வேண்டும். அடிப்படை Ownable ஒப்பந்தத்தால் வழங்கப்படும் மாற்றியைப் பயன்படுத்தி உங்கள் சொந்த செயல்பாடுகளைப் பாதுகாக்க இது உங்களை அனுமதிக்கும்.
1import ".../Ownable.sol"; // இறக்குமதி செய்யப்பட்ட நூலகத்திற்கான பாதை23contract MyContract is Ownable {4 // பின்வரும் செயல்பாட்டை உரிமையாளர் மட்டுமே அழைக்க முடியும்5 function secured() onlyOwner public {6 msg.sender.transfer(1 ether);7 }8}மற்றொரு பிரபலமான உதாரணம் SafeMath (opens in a new tab) அல்லது DsMath (opens in a new tab). இவை மொழியால் வழங்கப்படாத, வழிதல் சரிபார்ப்புகளுடன் கூடிய எண்கணிதச் செயல்பாடுகளை வழங்கும் நூலகங்கள் (அடிப்படை ஒப்பந்தங்களைப் போலல்லாமல்) ஆகும். பேரழிவு தரும் விளைவுகளை ஏற்படுத்தக்கூடிய வழிதல்களுக்கு எதிராக உங்கள் ஒப்பந்தத்தைப் பாதுகாக்க, இயல்பான எண்கணித செயல்பாடுகளுக்குப் பதிலாக இந்த நூலகங்களில் ஒன்றைப் பயன்படுத்துவது ஒரு நல்ல நடைமுறையாகும்!
தரநிலைகள்
இணைதிறன் மற்றும் இயங்குதன்மை ஆகியவற்றை எளிதாக்க, எத்தேரியம் சமூகம் ERC களின் வடிவத்தில் பல தரநிலைகளை வரையறுத்துள்ளது. தரநிலைகள் பிரிவில் அவற்றைப் பற்றி மேலும் படிக்கலாம்.
உங்கள் ஒப்பந்தங்களின் ஒரு பகுதியாக ERC-ஐச் சேர்க்கும்போது, சொந்தமாக ஒன்றை உருவாக்க முயற்சிப்பதை விட, நிலையான செயலாக்கங்களைத் தேடுவது நல்லது. பல ஸ்மார்ட் ஒப்பந்த நூலகங்கள் மிகவும் பிரபலமான ERC-களுக்கான செயலாக்கங்களை உள்ளடக்கியுள்ளன. உதாரணமாக, எங்கும் காணப்படும் ERC20 பரிமாற்றக்கூடிய டோக்கன் தரநிலையை HQ20 (opens in a new tab), DappSys (opens in a new tab) மற்றும் OpenZeppelin (opens in a new tab) ஆகியவற்றில் காணலாம். கூடுதலாக, சில ERC-கள் ERC-யின் ஒரு பகுதியாக நியமன செயலாக்கங்களையும் வழங்குகின்றன.
சில ERC-கள் தனித்தியங்கும் அல்ல, ஆனால் மற்ற ERC-களுக்கான சேர்த்தல்களாகும் என்பது குறிப்பிடத்தக்கது. உதாரணமாக, ERC2612 (opens in a new tab) அதன் பயன்பாட்டை மேம்படுத்துவதற்காக ERC20-க்கு ஒரு நீட்டிப்பைச் சேர்க்கிறது.
ஒரு நூலகத்தைச் சேர்ப்பது எப்படி
உங்கள் திட்டத்தில் ஒரு நூலகத்தைச் சேர்ப்பது குறித்த குறிப்பிட்ட வழிமுறைகளுக்கு, நீங்கள் சேர்க்கும் நூலகத்தின் ஆவணங்களை எப்போதும் பார்க்கவும். பல சொலிடிட்டி ஒப்பந்த நூலகங்கள் npm ஐப் பயன்படுத்தி தொகுக்கப்பட்டுள்ளன, எனவே நீங்கள் அவற்றை npm install செய்யலாம். ஒப்பந்தங்களைத் தொகுப்பதற்கான பெரும்பாலான கருவிகள், ஸ்மார்ட் ஒப்பந்த நூலகங்களுக்கு உங்கள் node_modules கோப்புறையைப் பார்க்கும், எனவே நீங்கள் பின்வருவனவற்றைச் செய்யலாம்:
1// இது உங்கள் node_modules-லிருந்து @openzeppelin/contracts நூலகத்தை ஏற்றும்2import "@openzeppelin/contracts/token/ERC721/ERC721.sol";34contract MyNFT is ERC721 {5 constructor() ERC721("MyNFT", "MNFT") public { }6}நீங்கள் எந்த முறையைப் பயன்படுத்தினாலும், ஒரு நூலகத்தைச் சேர்க்கும்போது, மொழிப் பதிப்பை எப்போதும் கவனத்தில் கொள்ளுங்கள். உதாரணமாக, உங்கள் ஒப்பந்தங்களை சொலிடிட்டி 0.5 இல் எழுதுகிறீர்கள் என்றால், சொலிடிட்டி 0.6 க்கான நூலகத்தைப் பயன்படுத்த முடியாது.
எப்போது பயன்படுத்த வேண்டும்
உங்கள் திட்டத்திற்கு ஸ்மார்ட் ஒப்பந்த நூலகத்தைப் பயன்படுத்துவதால் பல நன்மைகள் உள்ளன. முதலாவதாக, நீங்களே குறியீடு எழுதுவதற்குப் பதிலாக, உங்கள் கணினியில் சேர்க்கக்கூடிய, பயன்படுத்தத் தயாராக உள்ள கட்டமைப்புக் கூறுகளை வழங்குவதன் மூலம் இது உங்கள் நேரத்தை மிச்சப்படுத்துகிறது.
பாதுகாப்பும் ஒரு பெரிய நன்மையாகும். திறந்த மூல ஸ்மார்ட் ஒப்பந்த நூலகங்களும் பெரும்பாலும் தீவிரமாக ஆராயப்படுகின்றன. பல திட்டங்கள் அவற்றைச் சார்ந்து இருப்பதால், அவற்றை நிலையான மதிப்பாய்வின் கீழ் வைத்திருக்க சமூகத்தால் ஒரு வலுவான ஊக்கம் உள்ளது. மீண்டும் பயன்படுத்தக்கூடிய ஒப்பந்த நூலகங்களைக் காட்டிலும் பயன்பாட்டுக் குறியீட்டில் பிழைகளைக் கண்டறிவது மிகவும் பொதுவானது. சில நூலகங்கள் கூடுதல் பாதுகாப்பிற்காக வெளிப்புற தணிக்கைகளுக்கும் (opens in a new tab) உட்படுகின்றன.
இருப்பினும், ஸ்மார்ட் ஒப்பந்த நூலகங்களைப் பயன்படுத்துவது, உங்களுக்குப் பரிச்சயமில்லாத குறியீட்டை உங்கள் திட்டத்தில் சேர்ப்பதற்கான அபாயத்தைக் கொண்டுள்ளது. ஒரு ஒப்பந்தத்தை இறக்குமதி செய்து அதை நேரடியாக உங்கள் திட்டத்தில் சேர்ப்பது எளிதாகத் தோன்றலாம், ஆனால் அந்த ஒப்பந்தம் என்ன செய்கிறது என்பதைப் பற்றிய நல்ல புரிதல் இல்லாமல், எதிர்பாராத நடத்தை காரணமாக உங்கள் கணினியில் நீங்கள் கவனக்குறைவாக ஒரு சிக்கலை அறிமுகப்படுத்தலாம். நீங்கள் இறக்குமதி செய்யும் குறியீட்டின் ஆவணங்களைப் படிக்க மறவாதீர்கள், பின்னர் அதை உங்கள் திட்டத்தின் ஒரு பகுதியாக மாற்றுவதற்கு முன்பு குறியீட்டையே மதிப்பாய்வு செய்யுங்கள்!
கடைசியாக, ஒரு நூலகத்தைச் சேர்க்க வேண்டுமா என்று தீர்மானிக்கும்போது, அதன் ஒட்டுமொத்த பயன்பாட்டைக் கருத்தில் கொள்ளுங்கள். பரவலாக ஏற்றுக்கொள்ளப்பட்ட ஒன்று ஒரு பெரிய சமூகத்தைக் கொண்டிருப்பதன் நன்மைகளைக் கொண்டுள்ளது மற்றும் சிக்கல்களுக்காக அதை மேலும் பலர் ஆராய்வார்கள். ஸ்மார்ட் ஒப்பந்தங்களைக் கொண்டு உருவாக்கும்போது பாதுகாப்பு உங்கள் முதன்மைக் கவனமாக இருக்க வேண்டும்!
தொடர்புடைய கருவிகள்
OpenZeppelin ஒப்பந்தங்கள் - பாதுகாப்பான ஸ்மார்ட் ஒப்பந்த மேம்பாட்டிற்கான மிகவும் பிரபலமான நூலகம்.
DappSys - ஸ்மார்ட்-ஒப்பந்தங்களுக்கான பாதுகாப்பான, எளிய, நெகிழ்வான கட்டமைப்புக் கூறுகள்.
HQ20 - நிஜ உலகிற்கான முழு அம்சங்களுடன் கூடிய பரவலாக்கப்பட்ட பயன்பாடுகளை உருவாக்க உங்களுக்கு உதவும் ஒப்பந்தங்கள், நூலகங்கள் மற்றும் எடுத்துக்காட்டுகளுடன் கூடிய ஒரு சொலிடிட்டி திட்டம்.
thirdweb Solidity SDK - தனிப்பயன் ஸ்மார்ட் ஒப்பந்தங்களைத் திறமையாக உருவாக்கத் தேவையான கருவிகளை வழங்குகிறது
தொடர்புடைய பயிற்சிகள்
- எத்தேரியம் உருவாக்குநர்களுக்கான பாதுகாப்புக் கருத்தில் கொள்ளவேண்டியவை – நூலகப் பயன்பாடு உட்பட, ஸ்மார்ட் ஒப்பந்தங்களை உருவாக்கும்போது பாதுகாப்புக் கருத்தாய்வுகள் பற்றிய ஒரு பயிற்சி.
- ERC-20 டோக்கன் ஸ்மார்ட் ஒப்பந்தத்தைப் புரிந்து கொள்ளுங்கள் -பல நூலகங்களால் வழங்கப்படும் ERC20 தரநிலை குறித்த பயிற்சி.
மேலும் வாசிக்க
உங்களுக்கு உதவிய ஒரு சமூக வளம் பற்றி தெரியுமா? இந்தப் பக்கத்தைத் திருத்தி அதைச் சேர்க்கவும்!_