Design Patterns: Elements Of Reusable Object Oriented Software - Gamma (Erich) ;Helm (Richard)
25