بناء تبادل NFT من الصفر: شرح تفصيلي للعقود الذكية والتنفيذ الأمامي.

بناء DEX NFT من الصفر

بالنسبة لـ NFT التي تتبع بروتوكول ERC-721، فإن تحقيق DEX هو موضوع يستحق المناقشة. تستخدم معظم منصات NFT الرئيسية طرق الطلب للتداول، مما يشبه عرض السلع على الرفوف للاختيار من قبل المشترين. ستعرض هذه المقالة كيفية تحقيق DEX لـ NFT من خلال كتابة عقود ذكية وصفحة واجهة أمامية بسيطة. من المهم ملاحظة أن محتوى هذه المقالة هو لأغراض التعلم فقط، ولا ينطبق على بيئة الإنتاج الفعلية.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

نظرة عامة على NFT

NFT هو رمز غير قابل للتبادل، كل توكن هو فريد من نوعه، ويتبع بروتوكول ERC-721. عادةً ما تعرض NFTs في المحفظة صورًا مختلفة، ولكل مجموعة من NFTs معرف فريد للتمييز. نظرًا لخصائص NFTs، لا يمكن تحديد السعر كما هو الحال مع رموز ERC-20 من خلال منحنى السعر. لذلك، فإن الطريقة الشائعة للتداول حاليًا هي من خلال شكل دفتر الطلبات.

! سلسلة Web3 Newbie: تنفيذ NFT DEX من البداية

وضع التداول في دفتر الطلبات

نموذج دفتر الطلبات ينقسم أساسًا إلى نوعين:

  1. أمر التسعير: يقوم البائع بتحديد سعر البيع، ويمكن للمشتري الشراء إذا وجد السعر مناسبًا.
  2. طلب الشراء: يرسل المشتري طلب شراء، وعندما يعتقد البائع أن السعر مناسب يقوم بالبيع.

بشكل عام، سيكون سعر أوامر الشراء أقل من أوامر التسعير. ستتناول هذه المقالة طريقة تداول أوامر التسعير.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

وظائف NFT DEX الأساسية

يجب أن يحتوي DEX NFT الأساسي على الوظائف التالية:

  1. إدراج المنتج: عرض NFT بالسعر المحدد
  2. شراء السلع: الشراء وفقًا لتسعير NFT
  3. استلام الرسوم: يتم استلامها بنسبة من سعر المعاملة

عملية إدراج المنتجات

  1. الواجهة الأمامية: يقوم المستخدم باختيار NFT وتحديد السعر، ثم ينقر على الإدراج
  2. العقد: المستخدم يخول العقد لتشغيل NFT

عملية شراء السلع

  1. الواجهة الأمامية: يختار المستخدم NFT، وينقر على الشراء
  2. العقد: تحويل أموال المشتري إلى البائع وNFT إلى المشتري

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

تنفيذ NFT DEX

1. إنشاء NFT اختبار

يمكنك نشر عقد NFT بروتوكول ERC-721 للاختبار بسرعة باستخدام Remix.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

2. كتابة العقد الذكي

تشمل الطرق الرئيسية ما يلي:

2.1 البائع يعرض NFT

العملية:

  1. المستخدم يختار NFT
  2. تعيين السعر
  3. تفويض NFT للعقد
  4. استدعاء طريقة الإدراج

طريقة الإدراج تتطلب:

  • التحقق من ملكية NFT
  • إضافة سجل الإدراج
  • تفعيل حدث الإدراج

! سلسلة Web3 Newbie: تنفيذ NFT DEX من البداية

2.2 المشتري يشتري NFT

خطوات تنفيذ العقد:

  1. قراءة بيانات NFT
  2. حساب وخصم الرسوم
  3. نقل NFT للمشتري
  4. حدث شراء

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

2.3 إلغاء الإدراج

يمكنك تعيين حقل isActive المسجل في القائمة ليكون false.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

2.4 سحب الرسوم

سيتم إيداع الرسوم المستلمة في العقد أو تحويلها إلى العنوان المحدد.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

3. تطوير الواجهة الأمامية

الأدوات الرئيسية المستخدمة:

  • تصميم Ant Web3 -WAGMI
  • Next.js + فيرسيل

الصفحة الرئيسية:

  • Mint: صك اختبار NFT
  • شراء: NFT تبادل商城
  • المحفظة: إدارة إدراج وإلغاء إدراج NFT

3.1 ربط المحفظة

استخدام مكون الاتصال Ant Design Web3.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

3.2 صفحة Mint

استخدام طريقة useWriteContract من wagmi لاستدعاء عقد mint.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

3.3 صفحة الحافظة

عرض NFT للمستخدم، يدعم عمليات الإدراج والإزالة.

! سلسلة Web3 Starter: تنفيذ NFT DEX من البداية

3.4 صفحة الشراء

عرض NFT المدرجة، ودعم عمليات الشراء.

! سلسلة Web3 Newbie: تنفيذ NFT DEX من الصفر

من خلال الخطوات السابقة، تم إنشاء DEX أساسي لـ NFT. يمكن نشره على Vercel للوصول إليه.

MINT-15.67%
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 6
  • مشاركة
تعليق
0/400
GmGnSleepervip
· 07-26 04:07
ثور واو، اكتب Dex بنفسك، أصبحت هناك نكهة.
شاهد النسخة الأصليةرد0
TokenRationEatervip
· 07-25 22:02
مقالة تقنية كلاسيكية، يُنصح بحفظها ثم الحديث.
شاهد النسخة الأصليةرد0
MetaNomadvip
· 07-23 09:16
مشروع قديم ولكن لا أعرف كيف أكتب
شاهد النسخة الأصليةرد0
BrokeBeansvip
· 07-23 09:08
خفت حتى سقطت كلبي داخل السلسلة.
شاهد النسخة الأصليةرد0
DevChivevip
· 07-23 09:08
اليوم هو يوم تعلم البلوكتشين أيضًا ها~
شاهد النسخة الأصليةرد0
BearMarketNoodlervip
· 07-23 09:05
على أي حال، ليس هناك فرق مع الطلبات المفتوحة، إنه مجرد مضاربة.
شاهد النسخة الأصليةرد0
  • تثبيت