设计模式
kennygu
这个作者很懒,什么都没留下…
展开
-
设计模式-观察者模式
观察者模式定义了对象间的一种一对多依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让他们能够自动更新自己。 观察者模式的组成: 主题(Subject):把所有对观察者(ObServer)保存在一个集合中,转载 2014-12-04 13:37:30 · 511 阅读 · 0 评论 -
设计模式-策略模式
策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现方式(算法)。实现可以相互替换。策略模式让实现的变化不会影响到调用对象。 在不同的项目当中,关于验证的方式有所不同,比如身份证号码,邮政编码等。比如每个人都要“交个人所得转载 2014-12-04 13:37:58 · 519 阅读 · 0 评论 -
设计模式-状态模式
定义: 允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。 对象或类职责描述: 1. Content:内容 2. State:状态 UML图: 重点: 1. 状态转换可以由State类或者是Context类控制。 2. 使用状态模式通常会导致类的数量增加。 应用场景: 针对G转载 2014-12-04 13:58:33 · 507 阅读 · 0 评论 -
设计模式-命令模式
应用场景: 1. 当一个应用程序调用者与多个目标对象之间存在调用关系时,并且目标对象之间的操作很类似的时候。 2. 例如当一个目标对象内部的方法调用太复杂,或者内部的方法需要协作才能完成对象的某个特点操作时。 3. 有时候调用者调用目标对象后,需要回调一些方法。 职责定义: 1. Invoker:调用者对象。 2.转载 2014-12-04 14:02:35 · 498 阅读 · 0 评论 -
设计模式-装饰者模式
装饰者模式可以动态地给一个对象增加其他职责。就扩展对象功能来说,装饰者模式比生成子类更为灵活。 装饰者模式的应用场景: 想透明并且动态地给对象增加新的职责的时候。给对象增加的职责,在未来存在增加或减少可能。用继承扩展功能不太现实的情况下,应该考虑用组合的方式。 装饰者模式的优点: 通过组合而非继承的方式,实现了动态扩展对象的功能的能力。有效避免了使用转载 2014-12-04 14:11:27 · 623 阅读 · 0 评论