zuxel
Новичок
К примеру в приложении есть модель Book, есть несколько не связанных между собой компонентов, которые эту модель используют, и каждому из них надо чтобы эта модель могла иметь поведение необходимое только для этого компонента,
к примеру, для одного компонента модeль должна возвращать один набор аттрибутов, а для другого другой (один набор аттрибутов будет возвращаться через публичное апи, а второй через внутренее апи, с которыv работает фронтенд редактор этой модели).
Вначале была мысль сделать так:
Но в этом случае, если количество методов будет расти, то модел получится необъятным вместилищем разной логики, плюс нарушается принципе единственной ответственности.
Второй вариант такой:
Но смущает возросшее количество кода и необходимых классов.
Что можете посоветовать? Как такую структуру лучше всего реализовать с точки зрения праивльного ООП дизайна?
к примеру, для одного компонента модeль должна возвращать один набор аттрибутов, а для другого другой (один набор аттрибутов будет возвращаться через публичное апи, а второй через внутренее апи, с которыv работает фронтенд редактор этой модели).
Вначале была мысль сделать так:

Но в этом случае, если количество методов будет расти, то модел получится необъятным вместилищем разной логики, плюс нарушается принципе единственной ответственности.
Второй вариант такой:

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