By definition, Design Patterns are reusable solutions to commonly occuring problems(in the context of software design). Design patterns were started as best practices that were applied again and again to similar problems encountered in different contexts. They become popular after they were collected, in a formalized form, in the Gang Of Four book in 1994. Originally published with c++ and smaltalk code samples, design patterns are very popular in Java and C# can be applied in all object oriented languanges. In functional languages like Scala, certain patterns are not necesary anymore.
Document Application Example
Look & Feel Example
Text Converter Example
Database Example
Restaurant Example
News Publisher Example
Robot Example
Travel Example
Customers Example
Click to zoom
Shapes Example
GUI Example
Wargame Example
Calculator Example
Image Viewer