常见的设计模式：开放-关闭原则，依赖到转让则，装饰模式，代理模式，原型模式，模板方法模式