2,3,4,5,6,7,8,9,10,11,12,13,14
当前位置: 首页  - 标签“设计模式“ - 列表

设计模式

设计模式25 |访问者模式

25 |访问者模式

访问者模式的目的是封装一些施加于某种数据结构之上的操作,一旦这些操作需要修改的话,接受这个操作的数据结构可以保持不变。访问者模式适应于那种数据结构相对稳定的系统,它把数据结构和作用于数据机构之上的操作的耦合完全解开,使得操作集合可以自由的演化。访问者模式增加一个新的操作也很简单,只要增加一个新的访问者类即可。优点: 1、符合单一职责原则。

设计模式24 |状态模式

24 |状态模式

状态模式允许通过改变对象内部的状态而改变其行为,此时这个对象表现得就像修改了它的类一样。状态模式把所研究的对象的行为包装在不同的状态对象里,每个状态对象都属于一个抽象状态类的一个子类,当对象的状态发生变化时,对象便改变其所选的子类,从而达到修改其行为的目的。优点: 1、封装了转换规则。 2、枚举可能的状态,在枚举状态之前需要确定状态种类。

设计模式23 |命令模式

23 |命令模式

在面向对象的程序设计中,一个对象调用另一个对象,一般情况下的调用过程是:创建目标对象实例;设置调用参数;调用目标对象的方法。但在有些情况下有必要使用一个专门的类对这种调用过程加以封装,我们把这种专门的类称作command类。命令模式就是把一个请求或操作封装到一个对象中,把发出命令的责任和执行命令的责任分隔开,委派给不同的对象。优点: 1、

设计模式22 |备忘录模式

22 |备忘录模式

备忘录模式是行为模式之一,它的作用是保存对象内部状态,并在需要时,恢复对象以前的状态。相当于我们文档编辑中的撤销操作。备忘录模式的用意是定义一个外部类用于存储原对象内部状态的一个快照,即在不破坏封装的条件下,将一个对象的当前状态在外部存储下来,从而可以在适当时候把这个对象还原到原来的状态。优点: 1、给用户提供了一种可以恢复状态的机制,可

设计模式21 |观察者模式

21 |观察者模式

观察者模式是行为模式之一,他的作用就是当一个对象的状态发生改变时,可以由这个对象自动通知其他关联对象,主动去刷新他们的状态。优点: 1、观察者和被观察者是抽象耦合的。 2、建立一套触发机制。缺点: 1、如果一个被观察者对象有很多的直接和间接的观察者的话,将所有的观察者都通知到会花费很多时间。 2、如果在观察者和观察目标之间有循环依赖的话,

设计模式20 |桥接模式

20 |桥接模式

桥接模式使基于类的最小设计原则,通过封装、聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象和行为的具体实现分割开来,从而保证各部分的独立性以应对他们的功能扩展。即这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。也就是说将他们之间的强关联变成弱关联,即在一个软件系统内的抽象化和实现化之间使用组合聚合关系

设计模式19 |建造者模式

19 |建造者模式

建造者模式又叫生成器模式,它把复合对象复杂的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。即将产品的内部表象和产品的生成过程分割开来,从而使用一个建造过程生成具有不同内部表象的产品对象。建造者模式和工厂模式的区别:工厂模式:有一个抽象工厂实现一个具体工厂-汽车工厂汽车工厂A生产汽车A,得到汽车A汽车工厂B生产汽

设计模式18 |中介者模式

18 |中介者模式

中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使类之间的交互统一放在中介者类中进行控制,使代码易于维护。就像现实中的一个媒人作用,当两个年轻人不好意思直接找对象时,可以通过找媒人帮忙进行,就算不合适,也只要告诉媒人进行转达即可,免

设计模式17 |策略模式

17 |策略模式

策略模式是行为模式之一,它对一系列算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法调用交给客户端决定。例如我们有一个武器模子,然后通过具体实现,可以通过这个模子制作出一把刀、一把枪、甚至是一颗原子弹。然后把制作好的武器都交给客户端,具体使用什么武器,完全交给客户端决定。这就是策

设计模式16 |适配器模式

16 |适配器模式

适配器模式是为了将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。例如我们的手机充电口都是12V的,是不能直接接到我们的家庭电路上的,因为我们的家庭电路的电压都是220V的,如果直接连接,可能会把手机给充爆了。这时候就需要一个适配器,也就是我们的充电器,他可以把从家庭电路中出来的220V

点击下拉
用户登录