Цитата:
Сообщение от Psycho Tiger
Player extends Airship extends RotativeObject extends FlyingObject extends Sprite3D
5. Теперь объясните мне, что в этом плохого. В игре есть другие Airship`s, которые не игрок, есть вращающиеся объекты, а есть просто статичные летающие, и все экстендится от Sprite3D. Что плохого? Или речь исключительно о наследовании ради наследования?
|
Иногда бывает более уместна некая компонентная модель, в которой сам объект есть набор компонент, определяющих его свойства и т.п.
А подобная цепочка классов в итоге дает лишь головную боль, когда оказывается, что функционал, предоставляемый одним из классов цепочки, необходим в абсолютно стороннем классе. Ошибка проектирования в данном случае налицо.