SOLID are five basic principles which help to create good software architecture. SOLID is an acronym where:-
  1. S stands for SRP (Single responsibility principle):- A class should take care of only one responsibility.
  2. O stands for OCP (Open closed principle):- Extension should be preferred over modification.
  3. L stands for LSP (Liskov substitution principle):- A parent class object should be able to refer child objects seamlessly during runtime polymorphism.
  4. I stands for ISP (Interface segregation principle):- Client should not be forced to use an interface if it does not need it.
  5. D stands for DIP (Dependency inversion principle) :- High level modules should not depend on low level modules but should depend on abstraction.