جدول المحتويات:
تعريف - ماذا يعني Singleton؟
المفرد هو فئة تسمح فقط بإنشاء مثيل واحد من نفسها وتمنح حق الوصول إلى هذا المثيل الذي تم إنشاؤه. أنه يحتوي على متغيرات ثابتة التي يمكن أن تستوعب مثيلات فريدة وخاصة في حد ذاته. يتم استخدامه في السيناريوهات عندما يرغب المستخدم في تقييد إنشاء مثيل لفئة ما على كائن واحد فقط. هذا مفيد عادة عندما يكون كائن واحد مطلوبًا لتنسيق الإجراءات عبر النظام.
يُستخدم النمط المفرد في لغات البرمجة مثل Java و .NET لتعريف متغير عمومي. يظل الكائن الوحيد المستخدم عبر الأنظمة ثابتًا ويجب تحديده مرة واحدة فقط بدلاً من عدة مرات.
تيكوبيديا تشرح سينجلتون
المقصود مفردة لتوفير مثيل واحد فقط في حين تسهيل نقطة وصول عالمية. ينطوي تطبيق نمط مفرد على إنشاء فئة بطريقة تنشئ مثيلًا جديدًا من الفصل الدراسي. من أجل تنفيذ نمط مفرد ، يجب الوفاء بمبادئ المثيل الفردي والوصول الشامل. تشبه فئة المفرد مستودعًا عالميًا لمثيل في حد ذاته ، مما يجعل المنشئ خاصًا. لذلك ، لا يمكن إنشاء مثيل خارج الفصل على الإطلاق ، ويمكن أن يحتوي المفرد على مثيل واحد فقط. فئة مفردة مثيل في نفسه ويحافظ على هذا المثيل عبر الأنظمة.
مصنع مجردة ، أنماط البناء والنموذج الأولي يمكن استخدام المفردات. كائنات الواجهة والكائنات الساكنة غالبًا ما تكون مفردة. يتطلب تطبيق Singleton آلية يمكن من خلالها الوصول إلى عضو الفئة دون الحاجة إلى إنشاء كائن فئة والاحتفاظ بقيمة أعضاء الفئة بين كائنات الفئة. الخطوات المتضمنة في إنشاء مفردة كالتالي:
- يتم إنشاء المنشئ الخاص. هذا يسمح للفصل فقط بالوصول إلى المفرد.
- يتم إنشاء مثيل داخلي واحد للفئة باستخدام طريقة. تسمى الطريقة مثيل في هذا المثال. يتم استخدام الطريقة "المثيل" لتهيئة الفصل للوصول إلى مثيل واحد. تم وضع علامة على طريقة المثيل في هذا المثال لإتاحة وصول متناسق لكافة مؤشرات الترابط. خارج إنشاء المثيل ، يتم استخدام عبارة "lock" للتحكم في الوصول إلى مؤشرات ترابط متعددة. هذا تأمين إنشاء مثيل لمؤشر ترابط واحد.
مثال:
// إنشاء كسول من مثيل مفرد الداخليةالحالة العامة ثابتة لشهادة الاختبار
{
احصل على
{
قفل (نوع (testdata))
{
إذا (_instance == فارغة)
_instance = testdata () ؛
}
عودة _instance ؛
}
}
مثال:
اختبار الصف
{
بيانات خاصة ()
{
// … لا المرجع ل singleton