ماذا تسمي كائن مستوى يعادل Mixin/سمات النظام ، هناك نمط اسم ؟
-
21-08-2019 - |
سؤال
سبق وسألت عن ما Mixins كانت قد بدأت في الحصول على جوهر ما النمط يعني.ولكنه جعلني أتساءل إذا كان هناك نمط مشترك اسم لفعل شيء مثل Mixins في كائن المستوى بالمقارنة مع مستوى الصف.
البرمجية الزائفة (في بعض غير موجودة في اللغة):
Class MyClass
{
function foo()
{
print("foo")
}
}
function bar()
{
print("bar")
}
object = MyClass.new()
object.xxxx(bar)
object.bar() #output: bar
أعرف أن مثل هذه الأشياء يمكن أن يتم بعدة لغات, بطريقة أو بأخرى, ولكن أنا أتساءل ما يمكن أن يكون "المعيار" اسم وظيفة xxxx يمثل وما هو اسم هذا النمط ، إذا كان هناك واحد.
وذلك بفضل!
تحرير:التوسع في finnsson الجواب أعتقد أن شيئا مثل هذا قد يكون آخر حالة من هذا أن يكون:
object.xxxx(OtherClass)
object.otherfoo()
سوف لسلسلة يكون مناسبا ؟
اقتباس:"سلسلة:تحت نقية النماذج ، الذي يشار إليه أيضا concatenative نماذج..." -ويكيبيديا
المحلول
وهذا أمر شائع في النموذج القائم على لغات البرمجة.انا اجد انه دعا "استيراد" في "روبي" لكن الأمر بعض الوقت منذ آخر مرة برمجة روبي لذلك أنا لست متأكدا.
في js/روبي سوف تكتب
object.bar = bar;
object.bar() // output: bar
و من أي نمط, منذ انها مجرد الاحالة (o.بار = شريط) مما يجعل الشعور بالكمال في النموذج القائم على اللغة.أعتقد xxxx في المثال الخاص بك يمكن أن يسمى النموذج أو شيئا من هذا القبيل (انظر http://en.wikipedia.org/wiki/Prototype-based_programming حيث اللغة calles هذا بروتو).