تركيب السلوكيات
تتشابه السلوكيات مع الدوال، حيث يتم الإعلان عنها باستخدام الكلمة المفتاحية الدالة
متبوعة باسمها ، ويمكن أن تحتوي على المنطلقات وقيمة إرجاع ،
وتحتوي على بعض التعليمات البرمجية التي يتم تشغيلها عند استدعائها من مكان آخر.
ومع ذلك ، تختلف السلوكيات عن الدوال حيث يتم تعريفها في سياق شيء
أو نوع ما.
تعريف السلوكيات
دعونا نغير خوارزميتنا لحساب المساحة ، فنكتب سلوكية مرتبطة بمستطيل ، كما هو موضح في الصفرة 5-13.
الدالة (م مستطيل) مساحة() صحيح {
ارجع م.طوله × م.عرضه
}
النوع مستطيل شيء {
طوله صحيح
عرضه صحيح
}؛
الدالة الاصل() {
المتغير م مستطيل := {10، 5} ؛
شاشة::اكتب("مساحة المستطيل : ")
شاشة::اكتب( م.مساحة() )
}
لاحظ من الوهلة الأولى أننا نستدعي تعريف النوع مستطيل وليس المتغير مستطيل وذلك باستعمال الكلمة المفتاحية نوع
. وهكذا تمكنا من تعريف نوع جديد يمكن تعريف متغيرات من صنفه.
نوع مستطيل شيء {
طوله صحيح
عرضه صحيح
}؛
وقمنا ايضا بربط الدالة التي تحسب المساحة بالنوع مستطيل
بوضع متغير هذا النوع م
بين قوسين قبل اسم الدالة. ولحساب المساحة تم استعمال خصائص هذا المتغير م
.
الدالة (م مستطيل) مساحة() صحيح {...
ولحساب مساحة المستطيل نقول باستدعاء الدالة المرتبطة به (السلوك) كأنها خاصية من خصائه عن طريق استعمال العامل .
.
م.مساحة()
ملحوظة: ربط السلوكية لا يقتصر على نوع 'شيء' ؛ إذ يمكن ربط السلوكيات بأي نوع متاح في الخورارزم أو معرف من المطور.