تفاوت توکن (Token) و قرارداد هوشمند توکن (Token Smart Contract)
انواع توکن
تفاوت استاندارد ERC-20 و ERC-721
یک قرارداد توکن به سادگی یک قرارداد هوشمند اتریوم است. ارسال توکن ها به معنی صدا زدن تابعی در یک قرارداد هوشمند است که توسط کسی نوشته و در بلاکچین قرار داده (deploy) شده است.
یک قرارداد هوشمند چیزی بیشتر از مپ آدرس ها به موجودی حساب بعلاوه توابعی برای کم و زیاد کردن این موجودی نیست.
این موجودی نشان دهنده ی تعداد توکن ها است. وقتی میگوییم کسی توکن دارد که موجودی ان شخص در قرارداد توکن بیشتر از صفر باشد. این موجودی می تواند پول, امتیاز در بازی اسناد مالکیت, حق رای و … باشد. و هرکدام از این دارایی ها در قراردادهای توکن متفاوتی ذخیره می شوند.
تومان توی جیب شما یا بیتکوین (bitcoin) در کیف رمز ارز (Crypto Wallet) شما مثال اولیه از توکن fungible هستند. بلاکچین اولین بار با معرفی بیتکوین که از نوع توکن fungible است معرفی شد. اما ظرفیت بلاکچین خیلی بیشتر از ارز مجازی است. دارایی از هر نوعی می تواند روی بلاکچین ذخیره شود و برای انجام این کار توکن های non‑fungible معرفی شدند
استفاده از کتابخانه و قراردادهای openzeppelin به شما کمک می کند که هر گونه ریسکی را در پایین ترین حالت نگه دارید. این قراردادها کاملا آزمایش شده و امن هستند و تمام استانداردهای فعلی ERC را پیاده سازی می کنند.
در این ویدئو با تمام توابع استانداردی که یک توکن لازم است داشته باشد آشنا می شوید. همچنین هرکدام از این توابع در این ویدئو بررسی خواهند شد. همچنین با پیاده سازی استاندارد ERC-20 در کتابخانه openzeppelin آشنا خواهید شد.
چگونه با استفاده از کتابخانه اپنزپلین٫ توکن بسازید؟
جزیات برنامهنویسی توکن ERC-20
در این ویدئو با ابزار مورد نیاز برای ساخت توکن آشنا خواهید شد.
Truffle: تروفل محبوب ترین framework توسعه برای Ethereum است که مأموریت دارد برنامه نویسی بلاکچین را کاملاً آسان کند.
Ganache: به سرعت یک بلاکچین محلی Ethereum را راه اندازی میکند که می توانید برای اجرای تست ها ، اجرای دستورات, بررسی وضعیت و کنترل نحوه عملکرد بلاکچین از آن استفاده کنید.
Node js: برای کار با قراردادهای هوشمند لازم است که node js را در سیتم عامل خود نصب داشته باشید.
Visual studio: ویرایشگر کدی که در این آموزش از آن استفاده خواهیم کرد. شما می توانید ادیتور دلخواه خود را برای این کار داشته باشید.
Solidity: در این ویدئو ما از extension solidity در visual studio استفاده خواهیم کرد.
در این ویدئو با جزییات پیاده سازی ERC-20 در کتابخانه openzeppelin آشنا خواهیم شد.
روش درست استفاده از ترافل Truffle برای پیادهسازی توکن بر روی شبکه اتریوم
در این ویدئو یک توکن خیلی ساده با استفاده از کتابخانه openzeppelin ایجاد خواهیم کرد. خواهید دید که چطور با کمترین کد یک توکن استاندارد را ایجاد می کنیم.
استفاده از اسکریپتهای ترافل برای پیادهسازی و تست
بعد از ساخت توکن لازم است که آن را در بلاکچین محلی, deploy کرده و تست های اولیه برای اطمینان از پیاده سازی درست آن را تست کنیم. در این ویدئو با دستورات ساده و اولیه انتقال قرارداد هوشمند به بلاکچین محلی و تست توابع آن آشنا می شوید.
بلاکچین محلی ما توسط Ganache آماده شده که روند برنامه نویسی و تست آن را خیلی ساده کرده است.
سلام عایشه جان
من برای بیاده سازی توکن از همون اول به مشکل خوردم
کلا نمیتونم وارد اون محیط کد نویسی بشم
فرمودید سوال رو اینجا مطرح کنم تا بقیه استفاده کنن. البته شاید مبتدیانه باشه سوال به هر حال ببخشید. اسکرین ها رو میزارم
vs رو نصب دارم و اکستنشن سالیدیتی رو هم نصب کردم ولی نمیددونم مشکل از کجاست ؟ ممنون میشم راهنماییم کنید
سلام
Aysha داره توی کامندلاین لینوکس یه پوشه میسازه و اونو مقداردهی اولیه میکنه
اما شما سیستمعاملتون ویندوز هست و ویژوال استودیو رو باز کردید
با توجه به اینکه ویندوزتون ۱۱ هست مراحل زیر رو انجام بدید:
۱. ترمینال رو باز کنید
۲. تایپ کنید: mkdir myToken
۳. توی مسیری که هستید پوشهای با نام myToken ساخته میشه
۴. برید داخل پوشه :cd myToken
۵. آدرس رو با Truffle مقدار دهی اولیه کنید :truffle init (در صورتیکه در مراحل قبل truffle رو به درستی نصب کرده باشید)
ادامه رو هم طبق ویدئو پیش برید
npm ERR! 404 ‘@openzeppelin/create-contracts@latest’ is not in this registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\mvtrad\AppData\Local\npm-cache_logs\2022-01-18T19_56_54_145Z-debug-0.log
مشکل چیه؟
ممنون بابت کمکت تثریبا داره حل میشه مشکلم . ترافل و گنش و … همه رو نصب کردم فقط موقع اجرای ترافل این ارور رو میده ! ظاهرا میگه فایل ترافل disable شده از طرف مایکروسافت!! این رو هم یه راهنمایی بکنید ممنون میشم
ممنون دوست عزیز مشکل از تنظیمات ویندوز بود اون رو حل کردم ! اسکریبتها رو disable میکرد گشتم تو یوتیوب بیدا کردم enable کردم درست شد ! الان تو مرحله بعدی کتابخونه رو ارور میده
فقط الان یه فرق های کوچیکی هست مثلا مال شما safemath داره اینجایی که هایلایت کردم و مال من نداره ایا این تفاوتا باید باشه تو هر توکن یا جریانش چییه ممنون
سلام ببخشید درست شد دستور رو بدون sudo اجرا کردم.اما هنگام کامپایل این ارور رو میده ورژن رو هم به 0.6.0 تغییر دادم بازم ارور میده.به نظرتون چیکار کنم
ممنون
Compilation failed. See above.
Truffle v5.4.29 (core: 5.4.29)
Node v16.13.2
خیلی هم عالی خواهش میکنم.
اون تفاوت نسخه های مختلف کتابخونه هست بر اساس تغییرات ورژن سالیدیتی.
مثلا safe math از کنابخانه حذف شده. دلیلش هم اینه که تو نسخه ی جدیدتر سالیدیتی کنترل overflow و underflow انجام میشه و نیازی به استفاده ازش نیست.