Я нахожусь в процессе разработки ГЭФ View
(который позже превратится в ГЭФ Editor
), и я делаю это с помощью Книги ГЭФ .
В главе 8.1 («Модели ГЭФ») в книге построена модель, которая смешивает Информация о домене и Информация о представлении (которая щедро принимается ): GenealogyElement
является суперклассом abstract
для остальных объектов модели (кроме одного).
GenealogyElement
заботится о местоположении и изменениях местоположения его подклассов (Person
, Marriage
) и т.п., которые сами включают фактическую информацию о домене. Кстати, исходный код можно найти на сайте books .
Я бы не возражал против этого сам (даже если это, вероятно, «плохой стиль»), но я использую стороннюю модель, которую я не могу изменить , т. Е. Я не могу изменить класс ThirdPartyNode
для расширения, скажем, ExampleElement
.
Конечно, можно написать свою собственную модель против сторонней, создать abstract
класс ExampleElement
и позволить новому классу ExampleNode
расширить как ExampleElement
, так и ThirdPartyNode
. Я мог бы закончить тем, что сделал это, но действительно хочу сначала включить другие возможности, поскольку создание другой модели очень много печатает, и потенциально лишнее (не так ли?).
Какие есть варианты для разделения обоих типов информации?
Заранее спасибо!