some simple demo for design pattern