Write some examples to learn design patten