SOLID Principles for Programming and Software Design
SOLID is a mnemonic acronym that stands for the five design principles of Object-Oriented class design. These principles are meant to make object-oriented designs more understandable, flexible, and maintainable. In very plain terms, you want the objects of your subclasses to behave the same way as your superclass. A very common example is the rectangle, square scenario.