Here are demos of  DesignPattern