استكشف روعة اكتساب الموارد تهيئة

اكتساب الموارد تهيئة Resource acquisition is initialization (RAII) هو مصطلح برمجي يستخدم في عدة لغات موجهة للكائنات لوصف سلوك لغوي معين. في RAII ، يعد الاحتفاظ بالمورد صنف غير متغيّر، ويرتبط بعمر الكائن: يتم تخصيص الموارد (أو اكتساب) أثناء إنشاء الكائن (على وجه التحديد التهيئة)، من قبل المنشئ، بينما يتم إلغاء تخصيص الموارد (التحرير/إصدار) أثناء تدمير الكائن (على وجه التحديد)، من قبل المدمرة. وبعبارة أخرى، يجب أن ينجح اكتساب الموارد حتى تنجح التهيئة. وبالتالي يتم ضمان الاحتفاظ بالمورد بين وقت انتهاء التهيئة وبدء الانتهاء (الاحتفاظ بالموارد هو صنف لا متغيّر)، ويتم الاحتفاظ به فقط عندما يكون الكائن على قيد الحياة. وبالتالي إذا لم يكن هناك أي تسرب للكائن، فلن يكون هناك تسرب للموارد.

يرتبط اكتساب الموارد تهيئة بشكل بارز بـ سي ++ حيث نشأ، ولكن أيضًا دي وأدا وفالا ورست. تم تطوير هذه التقنية لإدارة الموارد الآمنة للاستثناءات في سي ++ خلال 1984-1989، بواسطةبيارن ستروستروب وأندرو كونيغ (كاتب) في المقام الأول، والمصطلح نفسه صاغه ستروستروب (Stroustrup). اكتساب الموارد تهيئة RAII تلفظ عموما باعتبارها initialism علامة اختصار، تلفظ في بعض الأحيان ب «R، A، I المزدوج».

الأسماء الأخرى لهذا المصطلح تشمل اكتساب المُنشئ ، إصدارات المدمرة (CADRe) وأحد أنماط الاستخدام المعينة يسمى إدارة الموارد المستندة إلى النطاق (SBRM). هذا المصطلح الأخير للحالة الخاصة للمتغيرات التلقائية. يربط RAII الموارد بعمر الكائن ، والذي قد لا يتزامن مع الدخول والخروج من النطاق. (المتغيرات التي تم تخصيصها على المتجر المجاني بشكل خاص لها عمر لا علاقة له بأي مجال معين.) ومع ذلك، فإن استخدام RAII للمتغيرات التلقائية (SBRM) هو حالة الاستخدام الأكثر شيوعًا.

قراءة المقال الكامل على ويكيبيديا ←