توابع(Function) در سالیدیتی(Solidity)
یک تابع بلوکی از کد سازمان یافته و قابل استفاده مجدد است که یک عمل را انجام می دهد. توابع به برنامه نویس اجازه می دهد تا کدهایی را مدیریت کند که ماژولار و قابل استفاده مجدد هستند.
زبانهای برنامهنویسی مختلف این بلوکها را از توابع کد سازمانیافته، روشها، روالهای فرعی، رویهها و غیره نامگذاری میکنند. اگر با این اصطلاحات برخورد کردید، فقط به یاد داشته باشید که مفهوم یکسان است.
توابع(Function) در سالیدیتی(Solidity)
یک تابع در Solidity یک قطعه کد قابل استفاده مجدد است که می تواند در داخل یا خارج از یک قرارداد هوشمند فراخوانی شود. به عنوان مثال:
- یک تابع می تواند تابع دیگری را در همان قرارداد فراخوانی کند.
- یک تابع می تواند تابع دیگری را در یک قرارداد متفاوت فراخوانی کند.
ایجاد یک تابع نیاز به چندین بار نوشتن یک کد را از بین می برد که احتمال اشتباه را کاهش می دهد و سازماندهی کد را ارتقا می دهد. تفکیک اساسی یک تابع در Solidity به شرح زیر است:
function name(uint x, uint y) public view returns (uint, unit) {}
این عملکرد می تواند بسیار زیاد به نظر برسد، اما وقتی فرمت را یاد بگیرید واقعاً درک آن آسان است. اجازه دهید این تابع را به قطعات کوچکتر تقسیم کنیم تا اجزای آن را درک کنیم.
اجزای یک تابع در سالیدیتی
هر یک از اجزای تابع در زیر با جزئیات بیشتری توضیح داده شده است. توضیحات بیشتر در بخش های بعدی ارائه خواهد شد. درک طرح بندی یک تابع در سالیدیتی بسیار مهم است.
COMPONENT | DESCRIPTION |
---|---|
function | برای تعریف یک تابع باید با این کلمه کلیدی شروع کنید. این به سالیدیتی می گوید که تابع از کجا شروع می شود |
name | یک نام معنی دار است که می خواهید تابع خود را صدا کنید. به خاطر داشته باشید که ممکن است از این نام در قسمت های دیگر قرارداد خود استفاده کنید |
uint x, uinty | نوع داده و نام متغیر. اینها پارامترهایی هستند که قرار است آنها را به تابع خود منتقل کنید تا ارزیابی شوند و نتیجه ای حاصل شود |
public | نشان می دهد که ایا تابع قابل مشاهده برای قرارداد های دیگر است یا خیر |
view | رفتار توابع را نشان می دهد به عنوان مثال تابعی است که فقط یک مقدار برای مشاهده تولید می کند یا اینکه داده ها را ذخیره می کند و وضعیت زنجیره بلوک را تغییر می دهد |
returns | خروجی برای بازگشت پس از اجرای تابع. نمی تواند آرایه چند بعدی باشد |
انواع توابع در سالیدیتی(Solidity)
2 نوع تابع وجود دارد که می توانید در Solidity ایجاد کنید:
- توابعی که تراکنش را در زنجیره بلوک ایجاد می کنند.
- توابعی که در زنجیره بلوک تراکنش ایجاد نمی کنند. (مشاهده(view) و خالص(pure))
سعی کنید تابع نمونه زیر را در Remix ایجاد کنید:
//define which compiler to use
pragma solidity ^0.5.0;
//contract name is MyFirstContract
contract MyFirstContract {
//create a string state variable called name
string private name;
//use the setName function to set a name
function setName(string memory newName) public {
name = newName;
}
//use the getName function to get the name you set
function getName () public view returns (string memory) {
return name;
}
}
در صورتی که تجربه خاصی در خصوص برنامهنویسی ندارید میتوانید از دورههای رایگان سایت ما “فرازمان“، استفاده کنید. همچنین اگر به دورههای پیشرفتهتری در این خصوص نیاز داشته باشید، ما با آموزش های حرفه ای که در سایتمان قرار دادیم می توانید به سطح دلخواهتان با تلاش و پشتکار برسید.
نقشه راه
راهنما آکادمی فرازمان
برای یادگیری برنامه نویسی بلاکچین…
در این باره بیشتر بخوانید
دیدگاهتان را بنویسید