Skip to content

Instantly share code, notes, and snippets.

@todgru
Created January 18, 2013 23:02
Show Gist options
  • Save todgru/4569441 to your computer and use it in GitHub Desktop.
Save todgru/4569441 to your computer and use it in GitHub Desktop.
solid object oriented oop

#SOLID

  • S SRP Single responsibility principle, an object should have only a single responsibility.
  • O OCP Open/closed principle, “software entities … should be open for extension, but closed for modification”.
  • L LSP Liskov substitution principle, “objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program”. See also design by contract.
  • I ISP Interface segregation principle, “many client-specific interfaces are better than one general-purpose interface.”
  • D DIP Dependency inversion principle, one should “Depend upon Abstractions. Do not depend upon concretions.” Dependency injection is one method of following this principle.

see http://en.wikipedia.org/wiki/SOLID_(object-oriented_design)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment