Gamma, Erich Design Patterns: Elements of Reusable Object Oriented softwere - N Delhi Pearson Edn. Pvt. Ltd. 2013 - 408 ISBN: 9788131700075