وبلاگ

سالیدیتی

سالیدیتی
برنامه نویسی بلاگ مقالات

سالیدیتی

وقتی از اتریوم حرف میزنیم، شاید اولین چیزی که به آن فکر کنید، قرار داد هوشمند باشد.همانطور که میدانید، قراردادهای هوشمند برنامه هایی هستند که روی بلاکچین اتریوم قرار دارند. به وسیله چنین قرارداد هایی میتوان برنامه های غیر متمرکزی ساخت که بدون هیچ واسطه، نظارت، کنترل و توقفی تا ابد به کار خود ادامه میدهند.
در ادامه با سالیدیتی که زبان برنامه نویسیه مخصوص اتریوم برای قراردادهای هوشمند است، آشنا میشوید.

درست مانند برنامه های رایانه ای، قراردادهای اتریوم به یک زبان برنامه نویسی نوشته میشوند که نام آن (Solidity) است. ناگفته نماند که زبان های برنامه نویسی دیگری هم وجود دارند که میتوان برای ایجاد قرارداد های هوشمند در شبکه اتریوم، از آنها استفاده کرد، اما امروزه بیشتر برنامه نویسان این حوزه سالیدیتی را انتخاب میکنند. در ادامه به این سوال که سالیدیتی چیست و چگونه میتوان این زبان برنامه نویسی را یاد گرفت بیشتر میپردازیم .

solidity

سالیدیتی چیست؟

Solidity یک زبان برنامه نویسی شی گرا است که به طور خاص توسط تیم شبکه اتریوم برای ساخت و طراحی قراردادهای هوشمند بر روی پلتفرم های بلاک چین ایجاد شده است.

مانند سایر زبان های برنامه نویسی، برنامه نویسی Solidity نیز دارای متغیرها، توابع، کلاس ها، عملیات حسابی، دستکاری رشته ها و بسیاری مفاهیم دیگر است.

این به عنوان ابزاری برای ایجاد کد در سطح ماشین و کامپایل آن در ماشین مجازی اتریوم (EVM) عمل می کند.
شباهت های زیادی با C و C++ دارد و یادگیری و درک آن بسیار ساده است. به عنوان مثال، یک “main” در C معادل “contract” در Solidity است.

قراردادهای هوشمند برنامه‌هایی هستند که در داخل یک شبکه همتا به همتا اجرا می‌شوند که در آن هیچ‌کس اختیار خاصی بر اجرا ندارد و بنابراین امکان پیاده‌سازی نشانه‌های ارزش، مالکیت، رای‌گیری و دیگر انواع منطق را می‌دهد. توجه داشته باشید که هنگام استقرار قراردادها، باید از آخرین نسخه منتشر شده Solidity استفاده کنید. این به این دلیل است که تغییرات شکستن و همچنین ویژگی های جدید و رفع اشکال به طور مرتب معرفی می شوند.

(Solidity) برای اولین بار در نوامبر 2014  پیش نمایش عمومی شد و در 8 ژوئیه 2020 ، 5 ساله شد.

زبان برنامه نویسی Solidity یک پروژه منبع باز و جامع است که توسط یک تیم اصلی اداره می شود  که تیم اصلی توسط بنیاد اتریوم حمایت می شود.

solidity

چگونه برنامه نویسیه سالیدیتی را شروع کنیم ؟
نسخه پراگما

پراگماها دستورالعمل هایی برای کامپایلر در مورد نحوه مدیریت کد هستند. هر خط از کد منبع جامد باید با “version pragma” شروع شود، که مشخص می کند از کدام نسخه کامپایلر solidity استفاده شود.

این امر از ناسازگاری کد با نسخه های کامپایلر آینده که ممکن است تغییراتی را ایجاد کنند، جلوگیری می کند.

کلمه کلیدی قرارداد :

code1

کلمه کلیدی قرارداد، قراردادی را اعلام می کند که کد را محصور می کند.

اعلان متغیرها/وضعیت :

code2

متغیرهای حالت بر روی بلاک چین اتریومنوشته شده و به طور دائم در ذخیره سازی قرارداد نگهداری می شوند.

خط ( ;uint public var1 ) یک متغیر حالت از نوع uint با نام var1 (عدد صحیح بدون علامت 256 بیتی) را اعلام می کند، که بسیار شبیه به افزودن یک شکاف در پایگاه داده است.

یک اعلامیه عملکردcode3

این تابعی به نام “set” از نوع اصلاح کننده دسترسی public است که یک متغیر a و متغیر b از نوع داده uint را به عنوان پارامتر می گیرد.

این نمونه ای از یک قرارداد هوشمند ساده بود که مقدار var1 و var2 را به روز می کند. هر کسی که به بلاک چین اتریوم دسترسی دارد می تواند از تابع set برای تغییر مقدار var1 و var2 استفاده کند.

با افزودن مقادیر متغیرهای var1 و var2 می تواند مجموع متغیر را محاسبه کند.

با استفاده از تابع “get” مقدار متغیر حالت مجموع را بازیابی و چاپ می کند.

نحوه اجرای کد

شما میتوانی یک برنامه solidity را به دو روش اجرا کنید

1- آفلاین
2- آنلاین

حالت آفلاین

برای اجرای قرار داد هوشمند solidity در حالت آفلاین ، باید سه شرط را داته باشد و چهار عمل ضروری را دنبال کند

  • شرایط1-  node.js را دانلود و نصب کنید.
    2-  truffle را به صورت globall نصب کنید.
    3-  ganache-cli را نصب کنید.
  • اقدامات1-  یک پروژه truffle ایجاد کنید و یک development network برای آن راه اندازی کنید.
    2-  یک قرار داد هوشمند برای آن ایجاد و مستقر کنید.
    3-  از کنسول truffle با قرار داد هوشمند تعامل کنید.
    4-  تست های برای ارزیانی ویژگی های اولیه solidity ایجاد کنید.
حالت آنلاین

حالت آنلاین solidity معمولا برای کامپایل واجرای قرار داد های هوشمند Remix IDE استفاده میشود.


مقاله پیشنهادیه ما به شما :

 

 

10 افزونه برتر Vs code  ,  پنجره Cmd چیست و از آن چه استفاده ای میشود؟  ،  قابلیت های جدید سرویس هاس گوگل ، فناوری و زخیره سازی محاسباتی

دیدگاه خود را اینجا قرار دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

فیلدهای نمایش داده شده را انتخاب کنید. دیگران مخفی خواهند شد. برای تنظیم مجدد سفارش ، بکشید و رها کنید.
  • عکس
  • شناسه محصول
  • امتیاز
  • قیمت
  • در انبار
  • موجودی
  • افزودن به سبد خرید
  • توضیحات
  • محتوا
  • عرض
  • اندازه
  • تنظیمات بیشتر
  • ویژگی ها
  • ویژگی های سفارشی
  • زمینه های دلخواه
برای پنهان کردن نوار مقایسه ، بیرون را کلیک کنید
مقایسه