上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 81 下一页
摘要: 一、概述 在软件开发中,某一个对象的请求可能会被多个对象处理,但每次最多只有一个对象处理该请求,对这类问题如果显示指定请求的处理对象,那么势必会造成请求与处理的紧耦合,为了将请求与处理解耦,我们可以使用职责链模式,职责链模式可以向多个处理对象提交请求,具体由哪个处理对象进行处理则是在运行过程中动态指 阅读全文
posted @ 2016-10-28 15:14 星火卓越 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 一、概述在软件设计工作中会存在对象之间的依赖关系,当某一对象发生变化时,所有依赖它的对象都需要得到通知。如果设计的不好,很容易造成对象之间的耦合度太高,难以应对变化。使用观察者模式可以降低对象之间的依赖,以松耦合的方式实现这一目标。二、观察者模式观察者模式定义对象间的一种一对多的依赖关系,当一个对象 阅读全文
posted @ 2016-10-28 15:14 星火卓越 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 一、概述 在软件开发中,我们往往会遇上类似树形结构的对象体系。即某一对象既可能在树形结构中作为叶节点存在,也可能作为分支节点存在。比如在文件系统中,文件是作为叶节点存在,而文件夹就是分支节点。在设计这类对象时,如果将叶节点和分支节点区别对待,那么在实际开发中会带来较大的复杂性。比如客户端调用时可能会 阅读全文
posted @ 2016-10-28 15:14 星火卓越 阅读(512) 评论(0) 推荐(0) 编辑
摘要: 一、概述在软件开发过程中,我们有时候需要保证一个类仅有一个实例,比如在一个电脑用户下只能运行一个outlook实例。这时就需要用到单件模式。二、单件模式单件模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。。单件模式的结构图如下: Singleton负责创建自己的唯一实例,并定义一个Inst 阅读全文
posted @ 2016-10-28 15:13 星火卓越 阅读(1824) 评论(0) 推荐(0) 编辑
摘要: 一、概述在软件开发中,常常会想要复用一个已经存在的组件,但该组件的接口却与我们的需要不相符,这时我们可以创建一个适配器,在需复用的组件的接口和我们需要的接口间进行转换,从而能够正常的使用需复用的组件。这就是适配器模式。二、适配器模式适配器模式将一个类的接口转换成客户希望的另一个接口,使得原本由于接口 阅读全文
posted @ 2016-10-28 15:13 星火卓越 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 一、概述在软件开发中,常常会需要创建一系列相互依赖的对象,同时,由于需求的变化,往往存在较多系列对象的创建工作。如果采用常规的创建方法(new),会造成客户程序和对象创建工作的紧耦合。对此,抽象工厂模式提供了一种解耦手段。二、抽象工厂模式抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需 阅读全文
posted @ 2016-10-28 15:13 星火卓越 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 一、概述我们来实现一个企业的工资系统,该企业中不同级别的员工工资算法都不相同,针对该问题,最容易想到的莫过于在代码中堆积一大堆if…else…语句或者是switch…case…语句。如果该企业中不同级别的员工过多,或是对级别的调整比较频繁,那该系统就会显得复杂而脆弱。如何能将对象和算法解耦,从而使得 阅读全文
posted @ 2016-10-28 15:13 星火卓越 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 一、概述在软件系统中,经常面临着“某个对象”的创建工作,由于需求的变化,这个对象的具体实现经常面临着剧烈的变化,但是它却拥有比较稳定的接口。如何应对这种变化?如何提供一种封装机制来隔离出“这个易变对象”的变化,从而保持系统中“其它依赖该对象的对象”不随着需求的改变而改变?这就可以用到工厂方法模式了。 阅读全文
posted @ 2016-10-28 15:13 星火卓越 阅读(529) 评论(0) 推荐(0) 编辑
摘要: 一、概述在软件系统中,有时候面临着复杂的对象创建,该对象由一定算法构成的子对象组成,由于需求变化,这些子对象会经常变换,但组合在一起的算法却是稳定的。生成器模式可以处理这类对象的构建,它提供了一种封装机制来隔离各类子对象的变化,从而保证系统的稳定。二、生成器模式生成器模式将一个复杂对象的构建与它的表 阅读全文
posted @ 2016-10-28 15:13 星火卓越 阅读(635) 评论(0) 推荐(0) 编辑
摘要: 一个完整的配置文件的例子如下所示,这个是”在C#代码中应用Log4Net(二)”中使用的配置文件。 先不分析上面这段配置信息是什么意思。我们先来回想一下我们的日志类通常用来做什么,假设我们有一个库存管理系统,分为两大模块,一个是出库,一个是入库。我们可能想要出库的相关信息保存在某一个文件夹里面,入库 阅读全文
posted @ 2016-10-28 15:12 星火卓越 阅读(304) 评论(0) 推荐(0) 编辑
上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 81 下一页