什么是设计模式
设计模式是在软件设计中常见问题的通用、可反复使用、多数人知晓的一种解决方案或模板
设计模式的类型
创建模式
创建设计模式提供了一种在隐藏创建逻辑的同时创建对象的方法,而不是使用new运算符直接实例化对象。这增加了现有代码的灵活性和重用,可以决定需要为给定的用例创建哪些对象。
创建设计模式可以分为:工厂方法,抽象工厂,生成器,单例,对象池和原型。
结构模式
结构设计模式是关于组合不同的类和对象,以形成更大的结构并提供新的功能。结构设计模式通过识别关系简化了结构;它关注的是,类如何从彼此继承以及它们是如何从其他类组成的。
结构设计模式可分为:适配器,桥,复合,装饰器,立面,Flyweight,私有类数据和代理。
行为模式
行为设计模式是关于识别对象之间的共同通信模式并实现这些模式。
行为设计模式可分为:责任链(Chain Of Resposibility),命令(command),解析器(Interpreter),迭代器(iterator),中介(mediator),备忘录(memento),空对象(Null Object),观察者(observer),状态(state),策略(strategy),模板方法(template method),访问者(visitor)