Задать вопрос
@bybyby

Как лучше разбить класс на модули?

Есть основной class A, который содержит в себе весь код.
Я хочу разбить программу на модули. Например, вынести отдельный ui в класс B. Экземпляр этого класса создает новую разметку и возвращает ее, однако класс B требует параметры из класса A и некоторые методы. Необходимые параметры я передаю в аргументах, а вот как поступить с методами затрудняюсь в решении. Так как методы мне понадобятся в обоих классах. Я не хочу их копировать вручную, чтобы не противоречить принципу DRY.

Варианты: передать результат вычисления метода из экземпляра класса А, передать метод из экземпляра класса А, сделать B extends A.

Насколько разумно в даном случае делать extends? Ведь в классе B мне не нужны все свойства и методы родительского объекта и класс B дополняет, а не расширяет класс А.
  • Вопрос задан
  • 428 просмотров
Подписаться 1 Простой Комментировать
Решение пользователя Hungry К ответам на вопрос (3)
@hungry-devel
Погуглите, следующие термины:

SOLID: SRP, LSP, ISP
GRASP: Polymorphism, Information Expert
+ наследование подтипов

Думаю, после этого, вы сами будете в состоянии ответить на свой вопрос.
Ответ написан
Комментировать