Помимо аспекта наследования, есть ли разница между следующими шаблонами класса:
1| trait TraitA extends TraitB
2| trait TraitA { self: TraitB => }
Я хотел бы разделить обязанности между Traita
и Traitb
, но первый не может функционировать без последних.
Как бы вы выразили этот намерение? Для меня решение [2] будет более естественным подходом. Однако я не хочу ставить нагрузку на реализующие, смешивающиеся в том, что необходимо в любом случае.