设计模式学习，增加工厂模式，策略模式，装饰模式，代理模式，简易代码描述。