Наследование
sergey shishkinПонятия "наследование" продолжает закреплять важность использования связки база + реализация. Для этого в группе утверждений ⟨3⟩ необходимо методы родительского класса отождествить с базой, а методы класса-наследника отождествить с реализацией.
В своей реализации понятие "наследование" позволяет использовать утверждение ⟨2.3⟩, то есть использовать дополнение кода вместо его изменения и дублирования. При этом необходимо исключить дублирование базового алгоритма. Однако, у подхода, использующего наследование для специализации универсального алгоритма, есть существенный минус. Этот недостаток — наличие двух сильно-связных блоков кода, которые тяжело изменять независимо. Эти связи-зависимости порождаются отношением родитель-наследник.
Существует множество альтернативных способов использовать связку база + реализация. Приведу далее примеры таких способов.
Параллельно, подмечаю, что для понятия "наследование" из ООП, так же можно найти аналогию в процессах биологической эволюции. В биологии это термин Наследственность.