Open/Closed Principle
Stable software should accept expected variation through extension without repeated modification of its core policy.
Stable software should accept expected variation through extension without repeated modification of its core policy.