Глубокая иерархия наследования классов — плохая идея?

в надежде, что гроссмейстер сможет пролить свет. Очень высокий обзор заключается в том, что я не новичок в кодировании, но все еще новичок в ООП. Этот набор классов сообщений лежит в основе большого приложения моделирования, которое мы пишем, и я не хочу делать это глупо — этот интерфейс разрезает приложение пополам, от секвенсора к исполнителю и наоборот.

Мой вопрос заключается в том, является ли плохой идеей иметь такую ​​глубокую иерархию наследования (изображение еще не конкретизировано, в конце концов оно может достигать 5 или 6 уровней). Это отличается от того, что некоторые из дочерних классов просто имеют направленную ассоциацию со своим родительским классом, а не наследуются.

Я читал, что глубокая иерархия наследования не является хорошей идеей, и что если дочерний класс наследует только для того, чтобы иметь данные родителя, то вы должны просто включить родителя как данные в дочерний элемент, но я с трудом обернув голову вокруг почему. Что плохого с нами случится, если я решу сделать иерархию наследования глубиной 7 или что-то в этом роде? Ясно, что есть небольшой удар по производительности, и изменение вещей наверху иерархии будет иметь огромные колебания во всем приложении, но в остальном я не вижу проблемы. Кроме того, меня мало волнуют незначительные различия в производительности.

Class Hierarchy

(дополнительный вопрос: есть ли готовый пакет, который обрабатывает подобные вещи? Мы обработали большинство низкоуровневых физических симуляций, но программу секвенирования нам придется написать. это подозрение, что то, что я изложил, очень похоже на то, что сделали примерно 10 000 разработчиков симуляторов до меня.)

(дополнительный вопрос № 2: любые мастера как систем моделирования, так и ООП-программирования, которые не возненавидели бы жизнь в Лос-Анджелесе. ? Мы нанимаем.)

5
задан Spatula City 15 June 2012 в 19:23
поделиться