Explaining Design Patterns

From time to time I have to explain design patterns to junior developers. There are many excellent books and web sites on this topic that I recommend. However, it turns out that often the developers cannot relateĀ a particular design pattern to a real world scenarios. In such cases I try to give an example implementation in theĀ  .NET Framework. I find this article very helpful. Hope you find it helpful too.