وقتی صحبت از «اتریوم» به میان میآید، شاید اولین چیزی که به ذهنتان میرسد، قرارداد هوشمند باشد. اگر خیلی با قراردادهای هوشمند آشنا نیستید باید بدانید، قراردادهای هوشمند برنامههایی هستند که روی بلاک چین اتریوم قرار دارند. بهوسیله چنین قراردادهایی میتوان برنامههایی غیرمتمرکز ساخت که بدون هیچ واسطه، کنترل و توقفی تا ابد به کار خود ادامه میدهند. در این مقاله با زبان برنامهنویسی سالیدیتی که زبان مخصوص اتریوم برای قراردادهای هوشمند است، آشنا میشوید.
درست مانند برنامههای رایانهای، قراردادهای اتریوم به یک زبان برنامهنویسی نوشته میشوند که «سالیدیتی» (Solidity) نام دارد. لازم به ذکر است که زبانهای برنامهنویسی دیگری هم وجود دارند که میتوان برای ایجاد قراردادهای هوشمند در شبکه اتریوم، از آنها استفاده کرد، اما این روزها انتخاب اکثر برنامهنویسان این حوزه سالیدیتی است. در ادامه قصد داریم به شما بگوییم زبان برنامهنویسی سالیدیتی چیست و چطور میتوانید برنامهنویسی با زبان سالیدیتی را یاد بگیرید.
سالیدیتی بهعنوان یک زبان برنامهنویسی
امروزه بیشتر برنامه نویسان از یک یا چند نمونه از شاخههای زبانهای برنامهنویسی استفاده میکنند. مثلاً برخی از شاخه زبانهای C که خود شامل چندین زبان C#، C++ و …است، پایتون یا جاوا و … استفاده میکنند. سالیدیتی بهنوعی طراحیشده که یادگیریاش برای برنامهنویسانی که با یک یا چند زبان برنامهنویسی کار کردهاند، آسان باشد.
اگر قبلا فقط در دوران دانشگاه با زبانی مانند «ویژوال بیسیک» کار کردهاید، یادگیری سالیدیتی برایتان کمی مشکل خواهد بود و اما اگر با زبانهایی همچون پایتون یا C کار کرده باشید، سالیدیتی تا حد زیادی برای شما آشنا خواهد بود.
سالیدیتی از مفاهیم بسیاری استفاده میکند که در دیگر زبانهای برنامهنویسی دیگر مشابه آنها را دیدهاید. برای مثال سالیدیتی دارای متغیرها، توابع، کلاسها، عملیاتهای محاسباتی، رشتهها و … است. در حالی که در یک زبان برنامهنویسی مانند C، برنامهنویس نوعی تابع اصلی مانند {int main(arg۱, arg2) { //code ایجاد میکند، سالیدیتی دارای مفهومی با عنوان «قرارداد» (Contract) است که طی روندی مشابه ساخته میشود.
آیا سالیدیتی ارزش یادگیری دارد؟
اگر به دنبال یادگیری سالیدیتی برای شغل خود هستید، پیش از یادگیری باید بدانید به چه مهارتهای دیگری نیاز دارید. بااینکه یاد گرفتن مهارتهای مربوط به بلاک چین بسیار ارزشمند است، احتمالا لازم باشد کسی که میخواهد به این حوزه وارد شود به یکی از زبانهای برنامهنویسی تسلط کامل داشته باشد. مثلا در یک آگهی شغلی در این زمینه عنوان شده است کسی را میخواهند که نهتنها با سالیدتی، بلکه به زباهای ترافل، نودجیاس و گولنگ هم آشنا باشد.
اگر حاضرید سالها وقت خود را صرف یادگیری سالیدیتی کنید، میتوانید امیدوار باشید که در سالهای آینده به شغلی مناسب نیز دست یابید.
در کنار سالیدیتی زبان برنامهنویسی دیگری با عنوان «سرپنت» (Serpent) نیز وجود دارد که بر پایه پایتون ساختهشده است. از آنجایی که پایتون زبانی ساده برای یادگیری است، اگر به دنبال چنین زبانی برای ایجاد قراردادهای هوشمند دارید میتوانید از سرپنت استفاده کنید. این مسئله را نیز به یاد داشته باشید که کدهای نگارش شده بهوسیله سالیدیتی و سرپنت را میتوانید بهراحتی برای اتریوم کلاسیک و RSK و دیگر پلتفرمهای قراردادهای هوشمند نیز ترجمه کنید.
در حال حاضر سالیدیتی پادشاه زبانهای برنامهنویسی مرتبط با قراردادهای هوشمند است و یادگیری آن میتواند به یادگیری دیگر زبانهای قراردادهای هوشمند نیز کمک کند.