
设计模式
文章平均质量分 81
yufaw
IT民工
展开
-
设计模式之状态模式(二)
状态模式 状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。 要点: 1. 策略模式和状态模式是双胞胎,它们有相同的类图,但是它们的意图不同。策略模式是围绕可以互换的算法来成功创建业务的,然而状态模式是通过改变对象内部的状态来帮助对象控制自己的行为.2. Context将与状态相关的操作委托给当前的Concrete State对象处理。 3.转载 2012-04-04 22:16:11 · 353 阅读 · 0 评论 -
类图基础
类图是显示出类,接口以及它们之间静态结构和关系的图。 描述类的类图: 大体分为三层: 1. 类名 正体字为具体类,斜体字为抽象类 2. 属性 +public,-private,#protected 3. 方法(同上) 静态方法下面加下划线 实例: 类图中的关系: 1. 一般化关系(Generalization),即继承和实现转载 2012-04-04 22:22:25 · 686 阅读 · 0 评论 -
ISP简介(ISP--Interface Segregation Principle)
一、ISP简介(ISP--Interface Segregation Principle): 使用多个专门的接口比使用单一的总接口要好。 一个类对另外一个类的依赖性应当是建立在最小的接口上的。 一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,这是对角色和接口的污染。 “不应该强迫客户依赖于它们不用的方法转载 2012-04-04 23:19:46 · 6922 阅读 · 2 评论 -
策略模式
一、概念策略模式(Strategy):它定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them interchangeable. Strategy l转载 2012-04-04 23:45:40 · 430 阅读 · 0 评论 -
依赖倒转原则(DiP)和里氏代换原则(LSP)
抽象不应该依赖于细节,细节应当依赖于抽象。 要针对接口编程,而不是针对实现编程。 传递参数,或者在组合聚合关系中,尽量引用层次高的类。 主要是在构造对象时可以动态的创建各种具体对象,当然如果一些具体类比较稳定,就不必再弄一个抽象类做它的父类,这样有画蛇添足的感觉。 优点: 系统扩展灵活。 缺点: 需要大量的类。LSP讲的是基转载 2012-04-04 23:29:09 · 791 阅读 · 0 评论 -
单例模式
6.单例模式(Singleton Pattern)前面说提到的五种创建模式,主要解决的问题是如何创建对象,获得产品。而单例模式最要关心的则是对象创建的次数以及何时被创建。Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复杂转载 2012-05-24 14:05:38 · 758 阅读 · 0 评论