0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)
pure function ها در برنامه نویسی چه خصوصیت بارزی دارند؟

1 پاسخ

+1 امتیاز
قبل توسط (330 امتیاز)
ویرایش شده قبل توسط
 
بهترین پاسخ

فانکشن هایی pure هستند که :

-فقط وابسته به پارامترها باشند و برای هر پارامتر یکسان خروجی یکسانی داشته باشند.یعنی میگن مثل دستگاه قهوه خرد کن دانه قهوه می ریزی توش و در خروجی پودر قهوه میگیری.

-و اینکه side effect نداشته باشند.چون این ویژگی باعث میشه خروجی شما پایدار و ثابت نباشه.چه چیزهایی side effect  دارند؟

-تعریف متغیر در داخل فانکشن.چون ممکنه اون متغیر یکبار با پارامترها ملحق بشه و یک خروجی بده،یکبار ملحق نشه و خروجی دیگری بگیریم.

-کار کردن با توابع تاریخ و زمان که همیشه خروجیش فرق می کنه.

-کار کردن با سیستم فایل که ممکنه فایل در دسترس نباشه و خروجی شما شرط دار میشه.

-توابع random که هر دفعه مقدار متفاوت میده.

مزیت فانکشن pure چی هست:

-سادگی در تست و دیباگ

-memoization چون می دونیم جواب به ازای پارامتر یکسان تغییر نمی کنه پس می شه اون رو  cache کرد

-موازی کاری.میشه ورودی ها رو بین چند نخ توزیع کرد و با خیال راحت جواب رو گرفت.

سوالات مشابه

0 امتیاز
1 پاسخ 578 بازدید
+1 امتیاز
1 پاسخ 399 بازدید
0 امتیاز
1 پاسخ 496 بازدید
+1 امتیاز
2 پاسخ 1.5هزار بازدید
0 امتیاز
0 پاسخ 221 بازدید
0 امتیاز
1 پاسخ 515 بازدید
0 امتیاز
2 پاسخ 856 بازدید
...