add design pattern

Signed-off-by: WanBin <ouyangwanbin@gmail.com>