Professional C # Design: Patterns Applied - Fischer , Tom; Slater , John (Mumbai Apress, 2004)