Mark Eschbach

Software Developer && System Analyst

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.WIKI. Although the principals are generally coupled with Agile methodologies, the application of these principals may improve software quaility with any methodology.

SOLID stands for:

  1. Single Responsibility Principal: The idea that a class has singular and small problem domain to solve.
  2. Open-Close Principal: The source or object code of a class does not need to be modified to reuse that class.
  3. Liskov's Substitution Principal: A class will fullfill the pre- and post-conditions of all inheritied interfaces.
  4. Interface Segregation Principal: Each interface should abstract a problem domain to be solved such that you may vary the implementing class.
  5. Dependency Inversion Principal: Clients of a class should depend on the interface of the class.