مثيل (برمجة كائنية التوجه)
في البرمجة كائنية التوجه، المثيل (بالإنجليزية: instance) هو وجود ملموس لأي كائن، يتكوّن عادةً أثناء وقت تشغيل برنامج حاسوبي. من الناحية النظرية، فإن «المثيل» هو مرادف لـلـ «كائن» حيث أن كل منهما قيمة معينة (تحقق وجوده)، وقد يسمى أيضاً «كائن مثيل»؛ يؤكد «المثيل» على الهوية المميزة للكائن. إنشاء مثيل يسمى الاستنساخ أو التمثيل.
أنظمة التشغيل الموجهة بوزكس
في سياق أنظمة التشغيل الموجهة بوزيكس، يشير مصطلح «مثيل البرنامج» عادةً إلى أي عملية تنفيذ يتم إنشاءها من ذلك البرنامج عبر استدعاءات النظام ()fork
و()exec
؛ أي أن كل عملية تنفيذية (تشغيلية) في نظام التشغيل هي مثال على برنامج تم استنساخه منه.[1]
البرمجة الصنفية
في البرمجة الصنفية، يتم إنشاء كائنات من الأصناف بواسطة الروتين المساعد الذي يستدعي المنشئات، والتي تدمرها المدمرات. الكائن هو مثيل لصنف، ويمكن تسميته مثيل صنف أو كائن صنف؛ ومن ثم يُعرف التمثيل أيضًا باسم البناء. لا يمكن تمثيل جميع الأصناف لا يمكن إنشاء الأصناف المجردة، بينما تسمى الأصناف التي يمكن تمثيلها أصناف ملموسة. في البرمجة القائمة على النموذج الأولي، يتم إجراء التمثيل بدلاً من ذلك عن طريق نسخ (استنساخ) مثيل نموذج أولي.
قد يتنوع الكائن بعدة طرق. كل اختلاف محقق لهذا الكائن هو مثال لصنفه. أي أنه عضو في صنف معين له قيم محددة بدلاً من المتغيرات.
هناك فرق مهم بين نوع البيانات، وهو الواجهة البينية، والصنف، وهو التنقيذ البرمجي.
في لغات البرمجة
جافا
تستخدم كلمة المثيل (بالإنجليزية: instance) في لغة برمجة جافا في عدة سياقات وهي كالتالي:
المثيل
المثيل يشير إلى نسخة من الصنف والتي تسمى الكائن، والذي يتم انشائه بواسطة المعامل new
متبوعاً باسم الصنف.[2]
طريقة المثيل
وهي أي طريقة برمجية تستدعى عن طريق مثيل الصنف.
متغير المثيل
هي أي متغير أو عنصر يحوي بيانات مرتبط بالكائن، ويسمى أيضاً الحقل (بالإنجليزية: field).
معامل مثيل-من
معامل مثيل من instanceof
وهو عبارة عن معامل يأخذ قيمتين للتأكد أن القيمة الأولى (الصنف الأول) مثيل من القيمة الثانية (الصنف الثاني).[3]
سياق غير برمجي
في سياق غير برمجي، يمكنك التفكير في «الكلب» كنوع وكلبك الخاص كمثيل على ذلك الصنف.[4]
يتشابه معنى مصطلح «النوع» في علوم الحاسوب مع معنى كلمة «النوع» في لغة حياتنا اليومية. على سبيل المثال، يمكن للنادل أن يسأل العميل عن نوع المشروب الذي يريده – قهوة أم شاي؟ فنجان قهوة معين يستقبله العميل يمكننا اعتباره مثيل، بينما يشكل فنجانا قهوة مجموعة من مثيلين من القهوة، والذي يتحدد نوعه في نفس الوقت.
المراجع
- Bach, Maurice J. (1986)، The Design of the UNIX Operating System، Prentice Hall، ص. 10, 24، ISBN 0-13-201799-7، مؤرشف من الأصل في 15 مارس 2010.
- "Creating Objects (The Java™ Tutorials > Learning the Java Language > Classes and Objects)"، docs.oracle.com، مؤرشف من الأصل في 19 يونيو 2019، اطلع عليه بتاريخ 19 يوليو 2020.
- "Glossary of Terms"، docs.oracle.com، مؤرشف من الأصل في 29 نوفمبر 2018، اطلع عليه بتاريخ 19 يوليو 2020.
- "What is instance? – Definition from WhatIs.com"، Whatis.techtarget.com، مؤرشف من الأصل في 17 يوليو 2020، اطلع عليه بتاريخ 9 فبراير 2014.
- بوابة برمجة الحاسوب
- بوابة علم الحاسوب