Являются ли mixins рассмотрением шаблона дизайна? Структурный?
Является ли mixin образцом дизайна?
Ответ 1
Это языковая функция. "Шаблон" отличается от объекта тем, что он решает набор сил, которые могут влиять на ситуацию противоречивыми способами. Особенности, по их наличию или отсутствию, имеют тенденцию создавать силы, которые моделируют. Многие шаблоны проектирования (Double Dispatch - хороший пример) появились вокруг ограничений языка (в этом случае метод отправляет один аргумент).
Ответ 2
Да, это в Ruby.
Ответ 3
Да, он находится в D.
"Шаблон проектирования является общим многоразовым решением общей проблемы в разработке программного обеспечения" - Wikipedia
D компилируется в машинный код и с использованием mixins вы можете использовать его, чтобы сделать шаблоны еще более полезными, чем они есть в чем-то вроде С++.
Ответ 4
Микшины не являются шаблонами проектирования. В большинстве случаев это языковые особенности! Например. в языке D "mixin" - это ключевое слово. Использование ключевого слова для его предполагаемого куколка - это не шаблон. Типичные применения ключевых слов/языковых функций можно назвать "идиомой".
Иерархия - это "ничего", идиома, шаблон проектирования, шаблон архитектуры.