设计模式总结-封装变化、提高复用
又有一段时间没有接触设计模式了,都快忘记了,现在回忆回忆,看看还是否记得。
看了设计模式感觉设计模式主要有作用是:
1、提高复用 看看GOF的《设计模式可复用面向对象软件的基础》书名就知道
2、封装变化 提取潜在的变化,对变化进行封装,变化对开发和维护的影响降到最低
设计模式的分类:
1、创建型模式:主要是应用于对象的创建
单例模式:控制对象的数量
工厂方法模式、抽象工厂模式、生成器模式和原型模式都是用于减少使用new时与具体类之间的耦合
2、结构型模式:主要是使用对象创建更复杂的结构
适配器模式:转接对象接口,使之提供我们需要的方法
桥接模式:实现接口和具体实现的分离,支持对象多维的变化
合成模式:用于描述部分和整体的结构
装饰模式:在稳定接口的前提下,扩展对象的功能
外观模式:简化交互的复杂度
享元模式:对象的共享技术
代理模式:控制对象的访问
3、行为型模式:主要是封装对象的责任
责任链模式:封装了对象的责任,支持不同的责任
命令模式:封装命令请求,支持不同的命令请求
解释器模式:我也说不清楚,该模式理解不够,需要加强
迭代模式:封装集合的变化,支持不同的集合遍历
中介者模式:封装了对象间的交互,减少对象间的耦合
备忘录模式:封装了对象状态的变化,支持对象状态的改变
观察者模式:封装了对象的通知,减少对象间交互的耦合度
状态模式:封装与状态相关的行为,支持不同的状态行为
策略模式:封装算法,支持不同的算法
模板方法模式:封装了算法结构,将算法的一些子部分的实现放在子类中
访问者模式:增加对象的操作
呵呵,居然还记得一部分,以后要多深入理解理解,多实践,这可是架构师需要掌握的一项技能,当然,我现在不是,但它是我中期的一个目标。