136
Примеры / Re: Структура обобщений более сложна, чем иерархия - как диаграммировать
« : 17 Августа 2016, 13:30:35 »В стандартной метамодели UML нет места, чтобы запомнить isDerived у класса.Я тоже не нашёл. Но:
- В стандартной метамодели UML ассоциация имеет isDerived, а значит и некоторые классы (которые класс-ассоциации) могут быть производными
- В книге Рамбо и Блаха в 4.10. прямо сказано: "Производными могут быть классы, ассоциации и атрибуты" и пример есть (правда не очень хороший)
Можно без экзотики написать инвариант, запрещающий плохие комбинации наследования.Такой инвариант может быть в контексте любого из остальных 5 (кроме ExternalTransition) классов и только в классе Transition сохранит симметричность модели (но не простоту написания).
Попутно замечу, что производность класса не означает производность его атрибутов и ассоциаций - производным является состав объектов, но не значения свойств.