مثيل (برمجة كائنية التوجه)

المثيل  في البرمجة كائنية التوجه هو وجود ملموس لأي كائن، يتكوّن عادةً أثناء وقت تشغيل برنامج حاسوبي. من الناحية النظرية، فإن المثيل هو مرادف لـلـ «كائن» حيث أن كل منهما قيمة معينة (تحقق وجوده)، وقد يسمى أيضاً كائن مثيل؛ يؤكد المثيل على الهوية المميزة للكائن. إنشاء مثيل يسمى الاستنساخ أو التمثيل.

أنظمة التشغيل الموجهة بوزكس 
في سياق أنظمة التشغيل الموجهة بوزيكس، يشير مصطلح «مثيل البرنامج» عادةً إلى أي عملية تنفيذ يتم إنشاءها من ذلك البرنامج عبر استدعاءات النظام ()fork و()exec؛ أي أن كل عملية تنفيذية (تشغيلية) في نظام التشغيل هي مثال على برنامج تم استنساخه منه.

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

قد يتنوع الكائن بعدة طرق. كل اختلاف محقق لهذا الكائن هو مثال لصنفه. أي أنه عضو في صنف معين له قيم محددة بدلاً من المتغيرات.

هناك فرق مهم بين نوع البيانات، وهو الواجهة البينية، والصنف، وهو التنقيذ البرمجي.

في لغات البرمجة

جافا 
تستخدم كلمة المثيل  في لغة برمجة جافا في عدة سياقات وهي كالتالي:

المثيل 
المثيل يشير إلى نسخة من الصنف والتي تسمى الكائن، والذي يتم انشائه بواسطة المعامل new متبوعاً باسم الصنف.

طريقة المثيل 
وهي أي طريقة برمجية تستدعى عن طريق مثيل الصنف.

متغير المثيل 
هي أي متغير أو عنصر يحوي بيانات مرتبط بالكائن، ويسمى أيضاً الحقل .

معامل مثيل-من 
 معامل مثيل من instanceof وهو عبارة عن معامل يأخذ قيمتين للتأكد أن القيمة الأولى (الصنف الأول) مثيل من القيمة الثانية (الصنف الثاني).

سياق غير برمجي 
في سياق غير برمجي، يمكنك التفكير في «الكلب» كنوع وكلبك الخاص كمثيل على ذلك الصنف.

يتشابه معنى مصطلح «النوع» في علوم الحاسوب مع معنى كلمة «النوع» في لغة حياتنا اليومية. على سبيل المثال، يمكن للنادل أن يسأل العميل عن نوع المشروب الذي يريده  قهوة أم شاي؟ فنجان قهوة معين يستقبله العميل يمكننا اعتباره مثيل، بينما يشكل فنجانا قهوة مجموعة من مثيلين من القهوة، والذي يتحدد نوعه في نفس الوقت.

المراجع 

كائن (علوم الحاسوب)