ஒரு ERC-721 சந்தையை எவ்வாறு செயல்படுத்துவது
இந்தக் கட்டுரையில், Ethereum பிளாக்செயினுக்கான Craigslist-ஐ எவ்வாறு குறியீடு செய்வது என்பதை நான் உங்களுக்குக் காட்டப் போகிறேன்.
Gumtree, Ebay மற்றும் Craigslist ஆகியவற்றிற்கு முன்பு, விளம்பரப் பலகைகள் பெரும்பாலும் கார்க் அல்லது காகிதத்தால் செய்யப்பட்டன. பள்ளி தாழ்வாரங்கள், செய்தித்தாள்கள், தெருவிளக்குகள், கடை முகப்புகளில் விளம்பரப் பலகைகள் இருந்தன.
இணையத்தின் வருகையால் இவை அனைத்தும் மாறின. ஒரு குறிப்பிட்ட விளம்பரப் பலகையைப் பார்க்கக்கூடிய நபர்களின் எண்ணிக்கை பல மடங்கு பெருகியது. அதனுடன், அவை பிரதிநிதித்துவப்படுத்தும் சந்தைகள் மிகவும் திறமையானவையாகவும் உலகளாவிய அளவிற்கும் விரிவடைந்தன. Ebay என்பது ஒரு மிகப்பெரிய வணிகமாகும், இது இந்த இயற்பியல் விளம்பரப் பலகைகளிலிருந்து அதன் தோற்றத்தைக் கண்டறிந்துள்ளது.
பிளாக்செயின் மூலம் இந்த சந்தைகள் மீண்டும் ஒருமுறை மாறத் தயாராக உள்ளன, அது எப்படி என்பதை நான் உங்களுக்குக் காட்டுகிறேன்.
பணமாக்குதல்
ஒரு பொது பிளாக்செயின் விளம்பரப் பலகையின் வணிக மாதிரி Ebay மற்றும் பிற நிறுவனங்களின் வணிக மாதிரியிலிருந்து வேறுபட்டதாக இருக்க வேண்டும்.
முதலாவதாக, பரவலாக்கக் கோணம் உள்ளது. தற்போதுள்ள தளங்கள் தங்களுடைய சொந்த சேவையகங்களைப் பராமரிக்க வேண்டும். ஒரு பரவலாக்கப்பட்ட தளம் அதன் பயனர்களால் பராமரிக்கப்படுகிறது, எனவே முக்கிய தளத்தை இயக்குவதற்கான செலவு தள உரிமையாளருக்கு பூஜ்ஜியமாகக் குறைகிறது.
பின்னர் முன்-முனை (front end) உள்ளது, அதாவது தளத்திற்கான அணுகலை வழங்கும் வலைத்தளம் அல்லது இடைமுகம். இங்கே பல விருப்பங்கள் உள்ளன. தள உரிமையாளர்கள் அணுகலைக் கட்டுப்படுத்தலாம் மற்றும் கட்டணம் வசூலித்து, அனைவரையும் தங்கள் இடைமுகத்தைப் பயன்படுத்தும்படி கட்டாயப்படுத்தலாம். தள உரிமையாளர்கள் அணுகலைத் திறக்கவும் (மக்களுக்கே அதிகாரம்!) மற்றும் தளத்திற்கான இடைமுகங்களை யார் வேண்டுமானாலும் உருவாக்க அனுமதிக்கவும் முடிவு செய்யலாம். அல்லது உரிமையாளர்கள் அந்த உச்சநிலைகளுக்கு இடையில் எந்தவொரு அணுகுமுறையையும் முடிவு செய்யலாம்.
என்னை விட அதிக தொலைநோக்கு பார்வை கொண்ட வணிகத் தலைவர்களுக்கு இதை எப்படி பணமாக்குவது என்று தெரியும். நான் பார்ப்பதெல்லாம் இது தற்போதைய நிலையிலிருந்து வேறுபட்டது மற்றும் லாபகரமானதாக இருக்கலாம் என்பதுதான்.
மேலும், ஆட்டோமேஷன் மற்றும் கட்டணக் கோணம் உள்ளது. சில விஷயங்களை மிகவும் திறம்பட டோக்கனாக்கலாம் (opens in a new tab) மற்றும் விளம்பரப் பலகையில் வர்த்தகம் செய்யலாம். டோக்கனாக்கப்பட்ட சொத்துக்கள் பிளாக்செயினில் எளிதாக மாற்றப்படுகின்றன. மிகவும் சிக்கலான கட்டண முறைகளை பிளாக்செயினில் எளிதாகச் செயல்படுத்தலாம்.
நான் இங்கே ஒரு வணிக வாய்ப்பை உணர்கிறேன். ஒவ்வொரு பரிவர்த்தனையிலும் சிக்கலான கட்டணப் பாதைகள் சேர்க்கப்பட்டு, இயங்கும் செலவுகள் இல்லாத விளம்பரப் பலகையை எளிதாகச் செயல்படுத்தலாம். இதை எதற்காகப் பயன்படுத்துவது என்பது பற்றி யாராவது ஒரு யோசனையுடன் வருவார்கள் என்று நான் உறுதியாக நம்புகிறேன்.
இதை உருவாக்குவதில் நான் மகிழ்ச்சியடைகிறேன். குறியீட்டைப் பார்ப்போம்.
செயல்படுத்துதல்
சிறிது காலத்திற்கு முன்பு நாங்கள் வணிக வழக்கு எடுத்துக்காட்டு செயலாக்கங்கள் மற்றும் பிற நல்ல விஷயங்களுடன் ஒரு திறந்த மூல களஞ்சியத்தை (opens in a new tab) தொடங்கினோம், தயவுசெய்து பாருங்கள்.
இந்த Ethereum விளம்பரப் பலகைக்கான (opens in a new tab) குறியீடு அங்கு உள்ளது, தயவுசெய்து அதைப் பயன்படுத்தவும். குறியீடு தணிக்கை செய்யப்படவில்லை என்பதை நினைவில் கொள்ளுங்கள், மேலும் அதில் பணத்தை முதலீடு செய்வதற்கு முன்பு நீங்கள் உங்கள் சொந்த கவனத்தைச் செலுத்த வேண்டும்.
பலகையின் அடிப்படைகள் சிக்கலானவை அல்ல. பலகையில் உள்ள அனைத்து விளம்பரங்களும் சில புலங்களைக் கொண்ட ஒரு கட்டமைப்பாக (struct) மட்டுமே இருக்கும்:
1struct Trade {2 address poster;3 uint256 item;4 uint256 price;5 bytes32 status; // திறந்த, நிறைவேற்றப்பட்டது, ரத்து செய்யப்பட்டது6}எனவே யாரோ ஒருவர் விளம்பரத்தை இடுகையிடுகிறார். விற்பனைக்கு ஒரு பொருள். பொருளுக்கான விலை. வர்த்தகத்தின் நிலை திறந்திருக்கலாம், செயல்படுத்தப்பட்டிருக்கலாம் அல்லது ரத்து செய்யப்பட்டிருக்கலாம்.
இந்த வர்த்தகங்கள் அனைத்தும் ஒரு மேப்பிங்கில் (mapping) வைக்கப்படும். ஏனெனில் Solidity-ல் உள்ள அனைத்தும் ஒரு மேப்பிங் போலவே தெரிகிறது. மேலும் இது வசதியானது என்பதால்.
1mapping(uint256 => Trade) public trades;மேப்பிங்கைப் பயன்படுத்துவது என்பது, ஒவ்வொரு விளம்பரத்தையும் இடுகையிடுவதற்கு முன்பு அதற்கான ஐடியை (id) நாம் உருவாக்க வேண்டும், மேலும் ஒரு விளம்பரத்தை இயக்குவதற்கு முன்பு அதன் ஐடியை நாம் தெரிந்து கொள்ள வேண்டும். ஸ்மார்ட் ஒப்பந்தத்திலோ அல்லது முன்-முனையிலோ இதைக் கையாள பல வழிகள் உள்ளன. உங்களுக்கு சில குறிப்புகள் தேவைப்பட்டால் தயவுசெய்து கேளுங்கள்.
அடுத்து நாம் கையாளும் அந்தப் பொருட்கள் என்ன, பரிவர்த்தனைக்கு பணம் செலுத்தப் பயன்படுத்தப்படும் இந்த நாணயம் என்ன என்ற கேள்வி எழுகிறது.
பொருட்களைப் பொறுத்தவரை, அவை ERC-721 (opens in a new tab) இடைமுகத்தைச் செயல்படுத்த வேண்டும் என்று நாங்கள் கேட்கப் போகிறோம், இது உண்மையில் நிஜ உலகப் பொருட்களை பிளாக்செயினில் பிரதிநிதித்துவப்படுத்துவதற்கான ஒரு வழியாகும், இருப்பினும் இது டிஜிட்டல் சொத்துக்களுடன் சிறப்பாகச் செயல்படுகிறது (opens in a new tab). கன்ஸ்ட்ரக்டரில் (constructor) எங்கள் சொந்த ERC721 ஒப்பந்தத்தைக் குறிப்பிடப் போகிறோம், அதாவது எங்கள் விளம்பரப் பலகையில் உள்ள எந்தவொரு சொத்துக்களும் முன்கூட்டியே டோக்கனாக்கப்பட்டிருக்க வேண்டும்.
கட்டணங்களுக்கும், நாங்கள் இதே போன்ற ஒன்றைச் செய்யப் போகிறோம். பெரும்பாலான பிளாக்செயின் திட்டங்கள் தங்களுடைய சொந்த ERC-20 (opens in a new tab) கிரிப்டோகரன்சியை வரையறுக்கின்றன. வேறு சிலர் DAI போன்ற பிரதானமான ஒன்றைப் பயன்படுத்த விரும்புகிறார்கள். இந்த விளம்பரப் பலகையில், உங்கள் நாணயம் என்னவாக இருக்கும் என்பதை நீங்கள் கட்டமைப்பின் போது முடிவு செய்ய வேண்டும். எளிதானது.
1constructor (2 address _currencyTokenAddress, address _itemTokenAddress3) public {4 currencyToken = IERC20(_currencyTokenAddress);5 itemToken = IERC721(_itemTokenAddress);6 tradeCounter = 0;7}நாங்கள் அதை நெருங்கிவிட்டோம். எங்களிடம் விளம்பரங்கள், வர்த்தகத்திற்கான பொருட்கள் மற்றும் கட்டணங்களுக்கான நாணயம் உள்ளன. ஒரு விளம்பரத்தை உருவாக்குவது என்பது, உங்களிடம் அந்தப் பொருள் இருப்பதையும், அதை நீங்கள் இரண்டு முறை (ஒருவேளை வேறு பலகையில்) இடுகையிடவில்லை என்பதையும் காட்ட ஒரு பொருளை எஸ்க்ரோவில் (escrow) வைப்பதாகும்.
கீழே உள்ள குறியீடு அதைத்தான் சரியாகச் செய்கிறது. பொருளை எஸ்க்ரோவில் வைக்கிறது, விளம்பரத்தை உருவாக்குகிறது, சில பராமரிப்புப் பணிகளைச் செய்கிறது.
1function openTrade(uint256 _item, uint256 _price)2 public3{4 itemToken.transferFrom(msg.sender, address(this), _item);5 trades[tradeCounter] = Trade({6 poster: msg.sender,7 item: _item,8 price: _price,9 status: "Open"10 });11 tradeCounter += 1;12 emit TradeStatusChange(tradeCounter - 1, "Open");13}வர்த்தகத்தை ஏற்றுக்கொள்வது என்பது ஒரு விளம்பரத்தை (வர்த்தகத்தை) தேர்ந்தெடுப்பது, விலையைச் செலுத்துவது, பொருளைப் பெறுவது. கீழே உள்ள குறியீடு ஒரு வர்த்தகத்தை மீட்டெடுக்கிறது. அது கிடைக்கிறதா என்று சரிபார்க்கிறது. பொருளுக்கு பணம் செலுத்துகிறது. பொருளை மீட்டெடுக்கிறது. விளம்பரத்தைப் புதுப்பிக்கிறது.
1function executeTrade(uint256 _trade)2 public3{4 Trade memory trade = trades[_trade];5 require(trade.status == "Open", "Trade is not Open.");6 currencyToken.transferFrom(msg.sender, trade.poster, trade.price);7 itemToken.transferFrom(address(this), msg.sender, trade.item);8 trades[_trade].status = "Executed";9 emit TradeStatusChange(_trade, "Executed");10}இறுதியாக, வாங்குபவர் அதை ஏற்றுக்கொள்வதற்கு முன்பு விற்பனையாளர்கள் வர்த்தகத்திலிருந்து பின்வாங்குவதற்கான ஒரு விருப்பம் எங்களிடம் உள்ளது. சில மாடல்களில், விளம்பரங்கள் காலாவதியாகும் முன் ஒரு குறிப்பிட்ட காலத்திற்கு நேரலையில் இருக்கும். உங்கள் சந்தையின் வடிவமைப்பைப் பொறுத்து இது உங்கள் விருப்பம்.
இந்தக் குறியீடு ஒரு வர்த்தகத்தைச் செயல்படுத்தப் பயன்படுத்தப்படும் குறியீட்டைப் போலவே உள்ளது, நாணயம் கைமாறாது மற்றும் பொருள் விளம்பரத்தை இடுகையிட்டவருக்கே திரும்பிச் செல்லும் என்பது மட்டுமே வித்தியாசம்.
1function cancelTrade(uint256 _trade)2 public3{4 Trade memory trade = trades[_trade];5 require(6 msg.sender == trade.poster,7 "Trade can be cancelled only by poster."8 );9 require(trade.status == "Open", "Trade is not Open.");10 itemToken.transferFrom(address(this), trade.poster, trade.item);11 trades[_trade].status = "Cancelled";12 emit TradeStatusChange(_trade, "Cancelled");13}அவ்வளவுதான். நீங்கள் செயலாக்கத்தின் முடிவுக்கு வந்துவிட்டீர்கள். சில வணிகக் கருத்துக்கள் குறியீட்டில் வெளிப்படுத்தப்படும்போது எவ்வளவு சுருக்கமாக இருக்கின்றன என்பது மிகவும் ஆச்சரியமாக இருக்கிறது, இதுவும் அதுபோன்ற ஒரு நிகழ்வுதான். முழுமையான ஒப்பந்தத்தை எங்கள் களஞ்சியத்தில் (opens in a new tab) சரிபார்க்கவும்.
முடிவுரை
விளம்பரப் பலகைகள் ஒரு பொதுவான சந்தை அமைப்பாகும், இது இணையத்துடன் பெருமளவில் விரிவடைந்து, சில ஏகபோக வெற்றியாளர்களுடன் மிகவும் பிரபலமான வணிக மாதிரியாக மாறியது.
விளம்பரப் பலகைகள் பிளாக்செயின் சூழலில் நகலெடுக்க எளிதான கருவியாகவும் உள்ளன, தற்போதுள்ள ஜாம்பவான்களுக்கு சவாலாக அமையக்கூடிய மிகவும் குறிப்பிட்ட அம்சங்களுடன் இவை உள்ளன.
இந்தக் கட்டுரையில், விளம்பரப் பலகை வணிகத்தின் வணிக யதார்த்தத்தை தொழில்நுட்பச் செயலாக்கத்துடன் இணைக்க நான் ஒரு முயற்சி செய்துள்ளேன். உங்களிடம் சரியான திறன்கள் இருந்தால், ஒரு தொலைநோக்குப் பார்வையையும் செயலாக்கத்திற்கான வரைபடத்தையும் உருவாக்க இந்த அறிவு உங்களுக்கு உதவ வேண்டும்.
எப்பொழுதும் போல, நீங்கள் வேடிக்கையான எதையும் உருவாக்க விரும்பினால் மற்றும் சில ஆலோசனைகளை வரவேற்றால், தயவுசெய்து எனக்கு ஒரு செய்தி அனுப்புங்கள் (opens in a new tab)! நான் எப்போதும் உதவ மகிழ்ச்சியாக இருக்கிறேன்.
பக்கம் கடைசியாகப் புதுப்பிக்கப்பட்டது: 3 மார்ச், 2026