SOLID Principals
The SOLID Princiapls are five Object Oriented Design Principals intended to reduce the complexity of software and decrease the cost of the maintence cycle. According to Wikipedia, the acyronym was created by Robert C. Martin in the early 2000s.
SOLID stands for:
- Single Responsibility Principal: The idea that a class has singular and small problem domain to solve.
- Open-Close Principal: The source or object code of a class does not need to be modified to reuse that class.
- Liskov's Substitution Principal: A class will fullfill the pre- and post-conditions of all inheritied interfaces.
- Interface Segregation Principal: Each interface should abstract a problem domain to be solved such that you may vary the implementing class.
- Dependency Inversion Principal: Clients of a class should depend on the interface of the class.