![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
23种设计模式
文章平均质量分 50
zhangyuli1
上班是尽头是创业!
展开
-
23中设计模式11-责任链模式
链上的每一个对象都是请求的处理者,职责链模式可以将对象处理者连成一条线,并让请求沿着链传播,客户端只需要将请求放在链上即可,将请求的发送者和处理者解耦,这就是责任链模式的动机。该企业的采购审批时分批进行的,即根据采购金额的不同由不同层级的主管人员来审批,主任可以审批5万元以下的采购单,董事长可以审批5万元到10万元的采购单,100万元以上需要开会决定,请使用责任链模式模拟该系统。它定义一个处理请求的接口,一般设计为抽象类,由于不同的具体处理者处理请求的方式不一样,因此在其中定义一个抽象的处理方法。原创 2022-08-23 13:12:42 · 86 阅读 · 0 评论 -
23种设计模式 10桥接模式
本文对桥接模式(Bridge Pattern)的概念、设计结构图、代码、使用场景、聚合与合成原则以及什么是聚合/合成进行了描述。以一个桥接模式实例进行了说明。桥接模式是比较常用和简单的设计模式。当系统有多维角度分类时,而每一种分类又有可能变化,可以考虑使用桥接模式。......原创 2022-08-15 10:04:52 · 132 阅读 · 0 评论 -
23种设计模式 9组合模式
组合模式有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。...原创 2022-08-15 10:03:03 · 197 阅读 · 0 评论 -
23种设计模式-8外观模式
我们平时的开发中其实已经不知不觉的在用Façade模式,现在来考虑这样一个抵押系统,当有一个客户来时,有如下几件事情需要确认:到银行子系统查询他是否有足够多的存款,到信用子系统查询他是否有良好的信用,到贷款子系统查询他有无贷款劣迹。可以看到,在不用Façade模式的情况下,客户程序与三个子系统都发生了耦合,这种耦合使得客户程序依赖于子系统,当子系统变化时,客户程序也将面临很多变化的挑战。[GOF 《设计模式》]Façade模式注重的是简化接口,它更多的时候是从架构的层次去看整个系统,而并非单个类的层次。..原创 2022-08-15 10:01:04 · 74 阅读 · 0 评论 -
23种设计模式7装饰器模式
3、装饰(Decorator)角色:装饰器模式中的核心对象,所有具体装饰器对象的父类,完成装饰器的部分职能。4、装饰子类角色:ConcreteDecoratorA和ConcreteDecoratorB是两个具体的装饰器对象,他们完成具体的装饰功能。装饰功能的实现是通过调用被装饰对象对应的方法,加上装饰对象自身的方法。这是装饰器模式动机中的添加额。2、具体组件(ConcreateComponent)角色:是转换器模式中具体的被装饰的类,实现组件角色的类。装饰器模式:动态的给一个对象,增加一些额外的功能。...原创 2022-08-15 09:23:14 · 85 阅读 · 0 评论 -
23种设计模式6:代理模式
RedisdbHelepAdapter2 代理 RedisdbHelep 对RedisdbHelep方法进行操作。代理模式:就是包一层,通过一个类调用另一个类。类a-》通过类b-》 调用类c的方法。原创 2022-08-14 17:23:02 · 63 阅读 · 0 评论 -
23种设计模式5:适配器模式
例如: RedisdbHelep 为第三方类,里面的方法不适用于定义的接口 IDBHelp,通过包一层添加提个继承自IDBHelp的类实现接口和RedisdbHelep的适配。.//组合新增加构造函数适配。1:常用的适配器模式有 组合适配器模式。/// 1类适配器模式。/// 组合适配器模式。.........原创 2022-08-14 17:08:09 · 103 阅读 · 0 评论 -
23种设计模式-4结构型设计模式
依赖: 是一个类方法内部出现一个新类型,关联组合聚合是语义上的划分。比如接口实现‘继承、实现父类 子类和父类之间的关系。1:纵向关系 继承/实现父类 关系密切。2:横向关系 依赖、关联、组合、聚合。结构型设计模式 关注类和类的之间关系。面向对象-类之间的功能关系分2类。...原创 2022-08-14 16:31:15 · 93 阅读 · 0 评论 -
23种设计模式-3工厂模式-抽象工厂
客户程序依赖的全部是抽象类,在客户程序代码中没有出现过任何具体的实现类。因为在系列需要变化的时候,是不需要改变抽象类的,只是增加一个抽象类的实现而已,又由于客户程序只依赖于抽象,所以系列变化的时候客户程序完全无需变化。工厂模式-抽象工厂 是一个产品簇的创建 ,实现方式: 工厂+约束。...原创 2022-08-14 16:10:52 · 86 阅读 · 0 评论 -
23种设计模式-3工厂模式-简单工厂
Console.WriteLine("肤色:Yellow");Console.WriteLine("肤色:whilt");Console.WriteLine("肤色:Black");定义一个类,来简单实现类的工厂化类实例的生成。///工厂模式 简单工厂 ,工厂方法。原创 2022-08-14 14:17:17 · 164 阅读 · 0 评论 -
23种类设计模式--2原型模式
/volatile 线程安全。把对象的创建权限关闭。提供一个公开的静态方法,提供全新的对象 ,不走构造函数,避免对象的重复创建,提高效率。//和单例模式的区别地方。返回实例的的clone();全新对象 避免重复创建。......原创 2022-08-14 11:49:56 · 2326 阅读 · 0 评论 -
设计模式6个基本原则
p.vitrualMethord()// 虚方法 调用子类方法。p.AbstractMethord()//抽象方法。p.CommonMethord()// 普通方法: 调用父类方法。2:里式替换原则 (子类拥有父类的一切属性和方法))1:单一原则 (类方法尽量单一功能。.........原创 2022-08-14 10:08:55 · 81 阅读 · 0 评论 -
23种类设计模式--1单例模式
在多线程时可能会出问题…第一种最简单,但没有考虑。第二种考虑了线程安全。原创 2022-08-14 10:59:00 · 56 阅读 · 0 评论