SOLID Design Principles are the most important principles in object-oriented design. They were first introduced by Robert C. Martin, popularly known as Uncle Bob. It is an acronym for the first five object-oriented design(OOD) principles which, when combined together, make it easy for a programmer to develop software that is easy to maintain and extend. They also make it easy for developers to avoid code smells, easy refactor code and are also a part of the agile or adaptive software development. If we look at the design patterns categorization hierarchy, SOLID Design Principles is at the top of the hierarchy.