S : Single Task Responsibility : Each class does only one task well O : Open/Close : Open for extension, closed for change L : Liskov substitution principle : if a method can take a class as a parameter then it must be able to work by taking other subclasses of that class I : … Continued
Design Patterns
UML Quick Reference Guide
Allen Holub’s very useful and concise UML Reference Allen Holub’s UML Quick Reference