الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ماهو yield و lambda expressions وما الفائده من anonymous methods

بدأه ...@... في 20 يناير 2012 · 1 رد · 1,401 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

ماهو كلا من yield و lambda expressions و ما الفائده منهم ومتى وكيف نستخدمهم وما الفائده من anonymous methods طالما يوجد لدينا دوال لماذا نلجأ الى الدوال المجهوله

#2

السلام عليكم ورحمه الله وبركاته

اخي الـ yield ماهي الا كلمة محجوزه تستخدم في الـ Iterator Block فعلى سبيل المثال لو اردنا ارجاع مجموعة متسلسلة من الكائنات, فعوضا عن اضافة الكائن في كل حلقة من الدوران في مصفوفة او مجموعة, ومن ثم في النهاية ارجاع تلك المصفوفة او المجموعة الممتلئة بالكائنات, يمكننا استخدام الكلمة yield لتخبر المترجم ان هناك سلوك جديد وهو تزويدنا بقيمة لكائن enumerator

public static System.Collections.IEnumerable Power(int number, int exponent)
	{
    	int counter = 0;
    	int result = 1;
    	while (counter++ < exponent)
    	{
        	result = result * number;
        	yield return result;
    	}
	}

الـ Lambda Expression ماهي الا anonymous method اجراء بدون اسم يحتوي على جمل وعبارات تستخدم لإنشاء delegate او expression tree

(x, y) => x == y

واخيرا بالنسبة للدوال المجهولة فهي اساسا طريقة لتمرير code block كـ delegate parameter

.:: Wish to become better and better ::.

مواضيع مشابهة