January 16, 2014
Open / Closed Principle
Definition: An object should be open for extension but closed for modification.
This principle states that code should only be modified to fix bugs and errors, and to extend the functionality a new class should be used. Typically the new class would be a derived class to enable code re-use from the original or a common base class. This principle naturally leads to writing abstract base classes and extending functionality by writing new sub classes.