Является ли хорошей практикой делать родной класс родительским, так как родительский класс теряет свое значение? - PullRequest
0 голосов
/ 30 октября 2018

У меня есть родительский класс, скажем Parent, и два класса, расширяющих Parent, скажем, что они Sibling1 и Sibling2 соответственно. По мере развития и внесения новых изменений я обнаружил, что наличие Parent не имеет особого смысла, поскольку Sibling1 будет точно таким же, как Parent.

Я чувствую, что удаляю Parent и наличие Sibling1 в качестве суперкласса Sibling2 может сделать код чище, но проблема в том, что не имеет смысла делать Sibling1 как родитель Sibling2 поскольку в коде они не должны наследовать отношения.

Как мне сбалансировать ситуацию? Предположим, мне нужно, чтобы у Sibling1 и Sibling2 была некоторая корреляция, поскольку они разделяют большую часть логики в существующем коде.

1 Ответ

0 голосов
/ 30 октября 2018

Вы должны переместить всю общую логику в Parent и сохранить Sibling1, даже если это будет класс, который ничего не добавляет поверх Parent. Вы не должны делать Sibling1 родителем Sibling2, если это не имеет смысла с точки зрения предметной области.

Следует учесть, что наличие Sibling1 в качестве родителя Sibling2 не делает ваш код чище, оно просто позволяет вам достичь того же поведения (на данный момент, по крайней мере) с помощью меньше кода . Меньший код не всегда переводит на лучший дизайн .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...