مولد (برمجة)
هذه مقالة غير مراجعة.(يونيو 2020) |
في علم الحاسوب ، يعد المولّد generator روتينًا يمكن استخدامه للتحكم في سلوك تكرار الحلقة . جميع المولدات هي أيضا مكررات . [1] المولد يشبه إلى حد كبير دالة ترجع مصفوفة ، حيث أن المولد يحتوي على معلمات يمكن استدعائها، ويولد سلسلة من القيم. ومع ذلك ، بدلاً من بناء مصفوفة تحتوي على جميع القيم وترجعها كلها في وقت واحد ، ينتج المولد القيم واحدة تلو الأخرى، الأمر الذي يتطلب ذاكرة أقل ويسمح للمستدعي بالبدء في معالجة القيم القليلة الأولى على الفور. باختصار ، يبدو المولد يبدو كدالة ولكنه يتصرف مثل المكرر .
يمكن تنفيذ المولدات من حيث تركيبات تدفق التحكم المعبرة، مثل الروتينات الفرعية أو الاستمرارات من الصنف الأول. [2] تُعد المولدات، والمعروفة أيضًا باسم أشباه الروتينات، [3] حالة خاصة (وأضعف من) من الروتينات الفرعية، من حيث أنها دائمًا ما تعيد التحكم إلى المستدعي (عند تمرير قيمة إلى الوراء) ، بدلاً من تحديد روتين فرعي للقفز إليه.
انظر أيضًا
- تقييم كسول لإنتاج القيم عند الحاجة.
مراجع
- ^ What is the difference between an Iterator and a Generator? نسخة محفوظة 2020-06-25 على موقع واي باك مشين.
- ^ Kiselyov، Oleg (يناير 2004). "General ways to traverse collections in Scheme". مؤرشف من الأصل في 2019-12-22.
- ^ Anthony Ralston (2000). Encyclopedia of computer science. Nature Pub. Group. ISBN:978-1-56159-248-7. مؤرشف من الأصل في 2020-06-23. اطلع عليه بتاريخ 2013-05-11.
- ستيفان مورير ، ستيفن أوموهوندرو ، ديفيد ستاوتامير وكليمنس سزيبيرسكي: تجريد التكرار في ساثر . معاملات ACM على لغات وأنظمة البرمجة ، 18 (1): 1-15 (1996) [1]