klep
Новичок
Классы: наследование или агрегация
Есть порядка 15 классов.
Для удобства работы я их объеденил в три класса (с помошью наследования). Два класса по функциональным зависимостям между предками дополняют себя, а вот третий класс нет.
Он наследует порядка 8 классов, которые сильно не связанны друг с другом.
Разбить на более мелкие иерархии не получается (каждый из 8 классов реализовывает свое).
Хочется добиться некоторого подобия инкапсуляции, пользователь работает только с 3мя классами, а те в свою очередь передают управление своим предкам.
Если делать через агрегацию, то потребуется дублировать методы, а этого делать не хочется.
Что посоветуете?
Оставить все как есть или пересмотреть структуру?
Есть порядка 15 классов.
Для удобства работы я их объеденил в три класса (с помошью наследования). Два класса по функциональным зависимостям между предками дополняют себя, а вот третий класс нет.
Он наследует порядка 8 классов, которые сильно не связанны друг с другом.
Разбить на более мелкие иерархии не получается (каждый из 8 классов реализовывает свое).
Хочется добиться некоторого подобия инкапсуляции, пользователь работает только с 3мя классами, а те в свою очередь передают управление своим предкам.
Если делать через агрегацию, то потребуется дублировать методы, а этого делать не хочется.
Что посоветуете?
Оставить все как есть или пересмотреть структуру?