Design Patterns and Examples in Dot.Net