1. Single Responsibility Principle
http://www.oodesign.com/single-responsibility-principle.html
2. Open/Closed Principle
open for extension, but closed for modification
http://joelabrahamsson.com/a-simple-example-of-the-openclosed-principle/
3. Liskov's Substitution Principle(LSP)
http://www.oodesign.com/liskov-s-substitution-principle.html
4. Interface Segregation Principle (ISP)
http://www.oodesign.com/interface-segregation-principle.html