آموزش ایجاد یک قرارداد هوشمند روی شبکه ترون
بسیاری از توسعهدهندگان به دنبال ایجاد قرارداد هوشمند روی شبکه ترون هستند. این شبکه در سالهای گذشته طرفداران و کاربران زیادی پیدا کرده است و بستری مناسب برای توسعه قراردادهای هوشمند است. با توجه به افزایش تمایل مردم به استفاده از برنامههای غیرمتمرکز، یادگیری مراحل توسعه قراردادهای هوشمند به یکی از جذابترین موضوعات آموزشی در حوزه برنامهنویسی تبدیل شده است. در این مقاله مراحل ایجاد قرارداد هوشمند در شبکه ترون را به صورت گام به گام مرور خواهیم کرد.
قرارداد هوشمند چیست؟
قرارداد هوشمند (Smart Contrant) برنامهای است که روی نودهای بلاکچین ذخیره و اجرا میشود. ابتداییترین کاربرد شبکههای بلاکچین ذخیره دادهها است اما قراردادهای هوشمند بلاکچین را به بستری برای اجرای برنامهها تبدیل میکنند.
بلاکچین ترون چیست؟
ترون (Tron) یک شبکه بلاکچین غیرمتمرکز است که قابلیت میزبانی از قراردادهای هوشمند را دارد. در حال حاضر ترون یکی از مهمترین بسترها در بین تمامی شبکههای بلاکچین برای اجرای قراردادهای هوشمند محسوب میشود.
ایجاد قرارداد هوشمند روی ترون
در این بخش مراحل ایجاد قرارداد هوشمند روی شبکه ترون را به ترتیب بررسی خواهیم کرد.
مرحله اول: دریافت IDE
ابتدا از طریق لینک developers.tron.network/docs/setup-dapp-environment-1 به بخش توسعه شبکه ترون بروید و برای دریافت پیشنیازها اقدام کنید. پیشنیازها عبارتند از:
1) نرمافزار گوگل کروم
2) کیف پول ترون لینک (TronLink): شما میتوانید از طریق اپ استورهایی مثل Google Chrome app store این برنامه را دانلود و روی مرورگر خود نصب کنید.
در زمان نصب این کیف پول دقت داشته باشید که شبکه صحیحی انتخاب شود. علاوه بر این، ولت شما باید دارای مقداری TRX (توکن بومی شبکه ترون) باشد. شما میتوانید از شبکه Testnet Shasta برای مراحل آزمایشی استفاده کنید.
پس از نصب و راهاندازی تمام پیشنیازها، لینک tronide.io را در مرورگر خود باز کنید. حالا IDE ایجاد شده است.
مرحله دوم: ایجاد اسکریپت سالیدیتی
برای نوشتن اسکریپت با زبان سالیدیتی (Solidity) یک فایل نمونه با نام Poem.sol ایجاد کنید.
مرحله سوم: ایجاد کامپایلر
به بخش Plugin-Manager بروید و گزینه Solidity Compiler را فعال کنید.
بدین ترتیب کامپایلر سالیدیتی به عنوان یک گزینه جدید در منو به لیست ماژولهای فعال اضافه خواهد شد.
مرحله چهارم: حل ایشوها
برای حل یا اصطلاحاً Resolve ایشوها به ماژول Solidity Compiler بروید و روی گزینه Compile کلیک کنید.
در این بخش مشکلات و چالشهای کدهای نوشتهشده را مشاهده خواهید کرد. برای مثال در تصویر زیر یک هشدار در مورد license identifier و یک خطا در مورد missing identifier در لاین ۱۴ وجود دارد.
همچنین یک اصلاح فنی در لاین ۹ مورد نیاز است: جایی که String به عنوان پارامتر بازگشتی تعریف شده است.
زبان سالیدیتی توانایی به هم پیوستن دو رشته کد را ندارد. در چنین حالتی باید به سراغ راهکارهایی مثل تابع encodePacked رفت. لازم به ذکر است که ارائه چنین قابلیتی در بلاکچین ممکن است باعث کاهش امنیت و مشکلات فنی بیشتری شود.
حال برای ایجاد قرارداد هوشمند روی ترون باید فایل Poem.sol را به شکل زیر تغییر داد.
بدین ترتیب همه مشکلات حل خواهد شد و ویرایش فایل با موفقیت به پایان میرسد.
مرحله پنجم: دیپلوی یا استقرار
در این مرحله از ایجاد قرارداد هوشمند روی ترون به بخش مدیریت پلاگین برگردید و گزینه DEPLOYMENT را فعال کنید.
ممکن است بعد از فعال کردن این گزینه مجبور شوید دوباره فایل Poem.sol را کامپایل کنید تا افزونه Deployment کار کند.
اکنون وارد افزونه کیف پول ترون لینک در مرورگر کروم شوید و از منوی بالا، گزینه TRON Shasta Testnet را انتخاب کنید.
در مرحله بعد روی گزینه DEPLOY درون افزونه Deployment در IDE کلیک کنید. لازم به ذکر است که اگر بودجه کافی نداشته باشید، این عملیات موفق نخواهد بود.
درخواست تست توکنهای ترون از طریق لینک trongrid.io/shasta انجام میشود.
این مورد در لینک developers.tron.network/docs/tron-grid-intro نیز قابل بررسی خواهد بود.
پس از حصول اطمینان از کافی بودن بودجه کیف پول، روی گزینه DEPLOY کلیک کنید. بدین ترتیب شما با موفقیت یک قرارداد هوشمند در شبکه ترون ایجاد کردهاید.
خلاصه مطلب
همانطور که ملاحظه کردید، ایجاد قرارداد هوشمند روی ترون از چند مرحله کوتاه و آسان تشکیل شده است. روزبهروز به تعداد کاربران اپلیکیشنهای غیرمتمرکز افزوده میشود و شبکه ترون به عنوان یکی از مهمترین میزبانهای قراردادهای هوشمند، نقش مهمی در توسعه این برنامهها دارد. اگر شما هم به حوزه طراحی اپلیکیشنهای غیرمتمرکز علاقهمند هستید، بهتر است هر چه زودتر ایجاد قرارداد هوشمند در شبکه ترون یا سایر بلاکچینهای مشهور را آغاز کنید.
دیدگاه خود را ثبت کنید
سلام وقت بخیر
ترونهای زیادی رو در تست نت شستا گرفتم ایا اینها کاربردی برام دارند؟
یا غیر واقعی اند ؟
لطفا راهنمایی کنید .ممنون