function

متدها در زبانهای برنامه‌نویسی شی‌گرا بسیار کاربرد دارند، و برنامه نویسی بدون آنها تقریبا امکانپذیر نیست،در ادامه به آموزش ساخت متدها میپردازیم، پس  با من همراه باشید.

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

ساخت متدها با استفاده از کلیدواژه‌ی func شروع میشود. عبارت func مخفف عبارت function است.در مثال زیر ساخت نوع ساده‌ی یک متد را مشاهده میکنید:

نکته: برای درک بهتر متدها،پیشنهاد میکنم تمامی دستورات را در محیط playground نوشته و اجرا کنید.

 func doSomething(){
    print("Function Done !")
}
در مثال بالا متدی ساختیم به نام doSomething که وظیفه‌ی آن چاپ عبارتی در خروجی میباشد.
نکته: توجه داشته باشید عبارت () پرانتز باز و بسته در کنار نام متد اجباری میباشد، در ادامه دلیل الزام این پرانتز ها را فراخواهید گرفت.
این مثال را در playground بنویسید و برای فراخوانی متد نام آن را در زیر دستورات قبلی بنویسید، مطابق تصویر زیر:

func

همانطور که مشاهده میکنید، پس از صدا کردن نام متد، در خروجی عبارت ( ! Function Done ) ظاهر میشود. چرا که وظیفه‌ی کلی این متد چاپ همین عبارت میباشد، و برنامه نویس هرکجا که این خروجی را نیاز داشته باشد ،میتواند صرفا نام متد را صدا بزند.
اما کاربرد متدها بیش از این حرفها است، میتوانیم در زمان ساخت متد، مقدار ورودی را برای آن تعیین کنیم، و بر اساس آن، متد مورد نظر خروجی پردازش شده ای را نمایش خواهد داد.به مثال زبر توجه کنید:
func doSomething(a:Int){
    print("Function was passed \(a)")
}
در این مثال متدی ساختیم،که میتواند در زمان فراخوانی، مقداری را گرفته و آنرا در خروجی چاپ کند.
پس در زمان فراخوانی آن متد، باید پس از نام متد و در درون پرانتز مقدار ارسالی به آنرا نیز تعیین کنید،برای مثال اگر بخواهیم مقدار عدد ۵ را به متد ارسال کنیم باید پس از دستورات سخت متد، دستور زیر را بنویسیم.
doSomething(5)
نکته: در زمان صدا کردن یک متد، کامپایلر نوع مقدار دریافتی آن متد را به شما نشان خواهد داد،برای مثال در متد قبل،کامپایلر مقدار ورودی را به این شکل نمایش خواهد داد :
compiler
همانطور که متوجه شدید مقدار درون پرانتز اشاره به نوع مقدار ورودی متد دارد، پس شما باید مقداری عددی را به این متد پاس بدهید.
در جلسه‌ی بعد به متدهایی اشاره میکنیم که میتوانند خروجی های محاسباتی را نیز به شما ارسال کنند.همچنین با ارایه‌ی مثالهایی بیشتر، کار با متدها را فراخواهید گرفت.