У меня следующая ситуация:Идентичный шаблон наследования в нескольких классах
class A < CommonParent
... some code ...
class IdenticalDescendent < self
identical_statement_0
identical_statement_1
end
end
class B < CommonParent
... some other code ...
class IdenticalDescendent < self
identical_statement_0
identical_statement_1
end
end
меня такая ситуация много. Например, в моем приложении около сорока классов IdenticalDescendent
. Мне нравится шаблон, он позволяет мне позвонить A::IdenticalDescendent
или B::IdenticalDescendent
или что угодно, чтобы получить доступ к определенным связанным с ними поведениям в разных доменах (задано A
или B
). По причинам я не могу просто полностью отвлечь проблему, перестроив кластеры поведения.
Таким образом, общая форма моего вопроса заключается в том, как автоматизировать генерацию IdenticalDescendent во всех этих случаях. Там есть потомки CommonParent
, которые не вызывают этот шаблон, поэтому действия, вероятно, не должны происходить. Я предполагаю, что это должно произойти в Mixin или что-то, но я считаю, что если я просто пытаюсь сделать:
class A < CommonParent
include CommonBehaviour
... some code ...
end
module CommonBehaviour
... what ...
end
Я не могу понять, как писать CommonBehaviour
, чтобы для IdenticalDescendent спускаться с класса, включая ,
Помогите мне StackOverflow, вы - моя единственная надежда.
Приведите пример реальной жизни, пожалуйста. Трудно понять, чего вы пытаетесь достичь. До сих пор остается только догадываться: вы делаете это неправильно. – mudasobwa
Я получил его покрытый, спасибо людям! – wmjbyatt