Цитата:
|
Hint: никто не запрещает наследовать один абстрактный класс от другого абстрактного класса.
|
А, ну тогда здесь нет ничего сверъестественного.
Когда надо получить класс с похожим функционалом обычно от него никто не наследуется, а выносят базовый класс для обоих. Так просто проще.
А тут их просто еще финалят для верности.
Цитата:
|
Наследование реализаций - это частые и вынужденные меры. Зачем повторять код? Если программисты A и B сидят на одной трубе, не стоит им в тихую (по шухерски ) наследовать классы друг друга.
|
При выносе общего класса кода может быть даже меньше из-за того, что не потребуется перегружать в коде B специфичные для А методы и мусора в коде B будет меньше.
Цитата:
|
Как по мне, в данной ситуации, это рефакторинг - опасная операция.
|
Рефакторинг всегда опасная операция, а НЕрефакторинг - всегда рост дифектов в коде.
Все зависит от количества кода, использующего класс А, который собираешься рефакторить (будет печально, если ты отломал что-то в общей
либе и упало приложение, разрабатываемое вообще другой коммандой)
и от количества тестов для этого класса А, которыми сможешь проверить что ничего не отломал.
А если этот класс А использует 2-10 классов только в этом приложении, которые можно быстро протестить - грешно не отрефакторить
Цитата:
|
А может просто программист А поссорился с программистом В?
|
А что это меняет?