ocp-evolved-from-inheritance-to-abstraction

Status: IN

OCP underwent a reinterpretation from Meyer's 1988 inheritance-based version (extend by subclassing concrete implementations) to the polymorphic version (1990s, associated with Robert C. Martin), which uses abstract base classes and interfaces and became the dominant modern understanding.

Justifications

OCP's evolution from concrete inheritance to abstract polymorphism parallels and foreshadows the GoF's composition-over-inheritance principle

Depends on (SL): ocp-coined-by-meyer-1988, ocp-meyer-vs-polymorphic-interpretation, ocp-polymorphic-version-is-dominant-modern-interpretation

Depended on by

JSON