设计模式
砺雪凝霜
这个作者很懒,什么都没留下…
展开
-
设计模式——观察者设计模式
1 概念 观察者设计模式是对象的行为模式,又叫做发布-订阅模式、模型-视图模式,源-监听器模式或从属者模式 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。 2 观察者模式的结构 抽象主题(Subject)角色:主题角色把所有观察者对象的引用保存在一...2015-05-02 17:12:41 · 110 阅读 · 0 评论 -
设计模式——策略设计模式
以互相互换。这样可以在保证系统中原有代码几乎不变更的情况下,只需增加算法的一种实现,即可实现功能的变更。 2 策略模式有什么好处? 策略模式的好处在于可以保证原有代码几乎不变的情况下,实现功能上的扩展,具体体现在可以动态的改变对象的行为. 策略模式遵循了ocp(“开-闭”)的设计原则,一个良好的软件对内是封闭的,对外是易于开放的。 3 设计原则 设计原则是把一个类中经常改变或者将来可能改变的部分提取出来,作为一个接口,然后在类中包含这个对象的实例,这样类的实例在运行时2015-05-07 00:08:48 · 86 阅读 · 0 评论 -
设计模式——适配器模式
这很像变压器(adapter),变压器把一种电压变换成另一种电压,把美国的电器拿回中国大陆来用的时候,用户就面临电压不同的问题美国的生活用电电压是110V,而中国的电压是220V。如果要在中国实用在美国的电器,就必须有一个能把220V电压转换成110V电压的变压器。而这正像本模式所做的事,因而次模式也常常被称为变压器模式。 2 适配器模式的分类 适配器模式有类的适配器模式和对象的适配模式2种不同的形式。 3 类的适配器模式 类的适配器模式把适配的类的api转换成为目标类的api 模式所涉2015-05-05 00:58:06 · 66 阅读 · 0 评论 -
软件设计原则
以在不被修改的情况下改变模块的行为。 所有的软件系统都有一个共同的性质,即对他们的需求都是会随着时间的推移而发生变化,在软件系统面临新的需求时,系统的设计必须是稳定的,满足“开-闭”原则的设计可以给软件系统2个无可比拟的优越性: 通过扩展已有软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应性 和灵活性。 已有的软件模型,特别是最终的抽象层模块,不能再被修改,这就使变化中的软件系统有一定的稳定性和 延续性。 体现:策略2015-05-02 17:25:00 · 68 阅读 · 0 评论 -
设计模式——观察者设计模式
2015-05-02 17:12:41 · 71 阅读 · 0 评论 -
设计模式——状态设计模式
2 状态模式的结构 状态模式把所有研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。 模式所涉及的角色有: 抽象状态(State)角色:定义一个接口,用以封装环境(context)对象的一个特定转态所对应的行为。 具体状态(ConcreteState)角色:每一个具体状态类都实现了环境的一个状态所对应的行为。 环境(context)角色:定义客户2015-05-17 00:18:02 · 88 阅读 · 0 评论 -
设计模式——策略设计模式
以互相互换。这样可以在保证系统中原有代码几乎不变更的情况下,只需增加算法的一种实现,即可实现功能的变更。 2 策略模式有什么好处? 策略模式的好处在于可以保证原有代码几乎不变的情况下,实现功能上的扩展,具体体现在可以动态的改变对象的行为. 策略模式遵循了ocp(“开-闭”)的设计原则,一个良好的软件对内是封闭的,对外是易于开放的。 3 设计原则 设计原则是把一个类中经常改变或者将来可能改变的部分提取出来,作为一个接口,然后在类中包含这个对象的实例,这样类的实例在运行时2015-05-07 00:08:48 · 94 阅读 · 0 评论 -
设计模式——适配器模式
这很像变压器(adapter),变压器把一种电压变换成另一种电压,把美国的电器拿回中国大陆来用的时候,用户就面临电压不同的问题美国的生活用电电压是110V,而中国的电压是220V。如果要在中国实用在美国的电器,就必须有一个能把220V电压转换成110V电压的变压器。而这正像本模式所做的事,因而次模式也常常被称为变压器模式。 2 适配器模式的分类 适配器模式有类的适配器模式和对象的适配模式2种不同的形式。 3 类的适配器模式 类的适配器模式把适配的类的api转换成为目标类的api 模式所涉2015-05-05 00:58:06 · 81 阅读 · 0 评论 -
软件设计原则
以在不被修改的情况下改变模块的行为。 所有的软件系统都有一个共同的性质,即对他们的需求都是会随着时间的推移而发生变化,在软件系统面临新的需求时,系统的设计必须是稳定的,满足“开-闭”原则的设计可以给软件系统2个无可比拟的优越性: 通过扩展已有软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应性 和灵活性。 已有的软件模型,特别是最终的抽象层模块,不能再被修改,这就使变化中的软件系统有一定的稳定性和 延续性。 体现:策略2015-05-02 17:25:00 · 65 阅读 · 0 评论 -
设计模式——观察者设计模式
2015-05-02 17:12:41 · 85 阅读 · 0 评论 -
设计模式——状态设计模式
1 概念 状态模式又称为状态对象模式,状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类 一样。 2 状态模式的结构 状态模式把所有研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。 模式所涉及的角色有: ...2015-05-17 00:18:02 · 380 阅读 · 0 评论 -
设计模式——策略设计模式
1 什么是策略模式? 策略模式讲的是,如果有一组算法将来它们可能因为需求的原因而发生变更,那么可以将每一个算法都封装起来,使得他们可以互相互换。这样可以在保证系统中原有代码几乎不变更的情况下,只需增加算法的一种实现,即可实现功能的变更。 2 策略模式有什么好处? 策略模式的好处在于可以保证原有代码几乎不变的情况下,实现功能上的扩展,具体体现在可以动态的改变对象的行为...2015-05-07 00:08:48 · 120 阅读 · 0 评论 -
设计模式——适配器模式
1 概念 适配器模式把一个类的接口变换成客户端期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的俩个类能够在一起 工作。 这很像变压器(adapter),变压器把一种电压变换成另一种电压,把美国的电器拿回中国大陆来用的时候,用户就面临电压不同的问题美国的生活用电电压是110V,而中国的电压是220V。如果要在中国实用在美国的电器,就必须有一个能把220V电压转换成...2015-05-05 00:58:06 · 112 阅读 · 0 评论 -
软件设计原则
1 OCP(open - close Principle) 又叫"开-闭"原则,指的是在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展。换而言之,应当可以在不被修改的情况下改变模块的行为。 所有的软件系统都有一个共同的性质,即对他们的需求都是会随着时间的推移而发生变化,在软件系统面临新的需求时,系统的设计必须是稳定的,满足“开-闭”原则的设计可以...2015-05-02 17:25:00 · 67 阅读 · 0 评论 -
设计模式——状态设计模式
2 状态模式的结构 状态模式把所有研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。 模式所涉及的角色有: 抽象状态(State)角色:定义一个接口,用以封装环境(context)对象的一个特定转态所对应的行为。 具体状态(ConcreteState)角色:每一个具体状态类都实现了环境的一个状态所对应的行为。 环境(context)角色:定义客户2015-05-17 00:18:02 · 62 阅读 · 0 评论