经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
 设计模式

设计模式-行为型-访问者模式

访问者模式(Vistor):   访问者模式的官方定义是这样的:表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。官方的东西总是晦涩难懂的,那么我们现在就来拆解一下:首先"一个作用于某对象结构中的各元素的操作",提到了三个东西:对...[2019/10/10]

部分设计模式对比分析

桥接模式与装饰者模式区别: 桥接模式类图 装饰者模式类图   1、定义:     (1)桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变化     (2)装饰者模式:动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现...[2019/10/10]

你不知道的 IDEA Debug调试小技巧

一、多线程调试断点 Intellij IDEA 的debug断点调试是有一个模式的选择的,就像下面这张图,平时我们都使用的是默认的 ALL(在Eclipse中默认是线程模式) ,这种模式我们只能将一个线程断下来,但其他线程却已经执行过了;而将其改为 Thread 后,就可以多个线程都断下...[2019/10/9]

设计模式-行为型-中介者模式

中介者模式(Mediator):   在现实生活中,有很多中介者模式的身影,例如QQ游戏平台,聊天室、QQ群、短信平台和房产中介。不论是QQ游戏还是QQ群,它们都是充当一个中间平台,QQ用户可以登录这个中间平台与其他QQ用户进行交流,如果没有这些中间平台,我们如果想与朋友进行聊天的话...[2019/10/9]

行为型设计模式(下)

策略模式:   1、定义:定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户   2、模型结构:     (1)抽象策略(Strategy)类:定义了一个公共接口,各种不同的算法以不同的方式实现这个接口,     &nbs...[2019/10/9]

设计模式-行为型-迭代器模式

迭代器模式(Iterator):   迭代器模式允许你访问一个数据项序列中的所有元素,而无须关心序列是什么类型(数组、链表、列表或任何其他类型)。它能有效地构建一个数据管道,经过一系列不同的转换或过滤后再从管道的另一端出来。迭代器模式就是提供一种遍历集合元素的统一接口,用一致的方法遍...[2019/10/8]

Refresh design pattern

多年后, 再次翻阅设计模式书籍, 将每种模式的要点总结于此, 需要本身有一定设计模式基础, 再结合要点, 帮助更好理解与运用. 策略模式 (Strategy) 附加功能单独抽象不同接口 功能以组合方式引入抽象类 抽象类封装功能模块各调用 实现类可在构造中配置功能具体实现 观察者模...[2019/10/8]

设计模式-行为型-模板模式

设计模式-行为型-模板模式

模板模式(Template):   提到模板,可能大多数人想到的是"简历模板"、"论文模板"等,比如我们要写简历时,会从网上下载一份漂亮的简历模板,其格式是固定的,我们根据自己的情况填充不同的内容。模板模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改...[2019/10/8]

命令模式

命令模式关注动作本身,通过将动作封装成对象实现调用者和底层实现相分离。调用者只需要简单的下达命令,然后等待命令完成即可,对底层发生了什么完全不知情。关于命令模式一个很直观的例子就是点餐:当我们点餐时,我们只用关心将选好的菜品下单,然后等待送餐即可,我们不关心饭菜是怎么做的,不关心厨师是男...[2019/10/8]

设计模式-行为型-策略模式

策略模式(Strategy):   策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。用一句话来说,就是:“准备一组算法,并将每一个算法封装起来,使得它们可以...[2019/10/8]

创建型设计模式(上)

单例模式:   1、定义:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类   2、实现过程要点:     (1)单例类的构造函数为私有     (2)提供一个自身的静态私有成员变量     (3)提供一个公有的静态工厂...[2019/10/8]

设计模式-行为型-命令模式

命令模式(Command):   将请求封装成对象,以便使用不同的请求、日志、队列等来参数化其他对象。命令模式也支持撤销操作。 命令模式的角色:      1)传递命令对象(Invoker):是请求的发送者,它通常拥有很多的命令对象,并通过访问命令对象来执行相关请求,它不...[2019/10/8]

设计模式-行为型-职责链模式

职责链模式(Chain of Responsibility):   在现实生活中,常常会出现这样的事例:一个请求需要多个对象处理,但每个对象的处理条件或权限不同。如公司员工报销差旅费,可审批的领导有部分负责人、副总经理、总经理等,但每个领导能审批的金额是不同的,不同的金额需要找相应的...[2019/10/8]

结构型设计模式(上)

适配器模式: 类适配器: 对象适配器:    1、定义:将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作   2、模型结构:     (1)目标抽象类(Target):客户所期待得到的接口     (2)适配器类(A...[2019/10/8]

结构型设计模式(下)

结构型设计模式(下)

装饰模式:   1、定义:动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活   2、模型结构:     (1)抽象构件(Component):定义一个抽象接口以规范准备接收附加责任的对象     (2)具体构件(Concrete...[2019/10/8]

设计模式-行为型-状态模式

状态模式(State):   在软件开发过程中,应用程序可能会根据不同的情况作出不同的处理。最直接的解决方案是将这些所有可能发生的情况全都考虑到,然后使用if else语句来做状态判断来进行不同情况的处理。但对复杂状态的判断就显得"力不从心了",随着增加新的状态或者修改一个状体if ...[2019/10/8]

行为型设计模式(上)

责任链模式:   下图为责任链   1、定义:为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象         记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象...[2019/10/8]

设计模式-行为型-观察者模式

设计模式-行为型-观察者模式

观察者模式(Observer):   指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 观察者模式的角色:       1)抽象目标(Subject):也叫抽象目标类,它提供了一个用于保存观察者对象的聚集类...[2019/10/8]

迭代器模式

      迭代器模式提供了一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部实现。       有过Java编程经验的人对这种模式应该比较熟悉,因为Java内置的许多集合类型:List、Set、Map等都...[2019/10/8]

行为型设计模式(中)

中介者模式:   1、定义:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,         从而使其耦合松散,而且可以独立地改变它们之间的交互   2、模型结构:     (1)抽象中介者(Mediator)...[2019/10/8]

设计模式 - 单例模式(详解)看看和你理解的是否一样?

一、概述 单例模式是设计模式中相对简单且非常常见的一种设计模式,但是同时也是非常经典的高频面试题,相信还是有很多人在面试时会挂在这里。本篇文章主要针对单例模式做一个回顾,记录单例模式的应用场景、常见写法、针对线程安全进行调试(看得见的线程)以及总结。相信大家看完这篇文章之后,对单例模式有...[2019/10/8]

JAVA设计模式---单例模式篇

单例模式(singleton):是JAVA中最简单的一种设计模式,属于创建型模式。所谓单例,就是整个程序有且仅有一个实例。 特点:   构造方法私有化   在本类中实例化一个对象作为本类的属性   对外提供一个访问本类对象的方法 饿汉式:类加载时就加载对象 应用场...[2019/9/30]

设计模式 - 导读

发布说明 其实不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题。 设计模式天天都在用,但自己却无感知。 本系列文章,初衷是为了记录日常经常使用的设计模式,也给学习设计模式的同学们提供参考和查阅。 文章内容有自己的理解,也有参考网络,如有侵犯,请告知删除。 学习设...[2019/9/30]

设计模式 - 工厂模式

设计模式 - 工厂模式

概述 我们都知道Java中共有 23 种设计模式,其中工厂模式分为三种,即:简单工厂模式(不在 23 种设计模式之列)、工厂方法模式和抽象工厂模式;我们平时说的工厂模式,其实大都指工厂方法模式,这种模式是我们平时编码中用的频率最高的一种,在Spring源码中就有很多工厂模式的应用,比如...[2019/9/30]

设计模式-结构型-外观模式

外观模式(Facade):   外部通过一个统一的接口,访问子系统中的一群接口。外观模式定义了一个高层接口,为子系统中的一组接口提供一个一致的入口,使得子系统更容易使用。外观模式相对比较简单,可以理解为中介,原先租房需要自己一个个筛选,联系房东,谈好价格,签合同等等,现在不需要这些了...[2019/9/29]

JAVA设计模式---总述篇

一、设计模式(Design Pattern):   1.设计模式的概念       是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。使用设计模式是为了可重用代码、让代码更容易被他人理...[2019/9/29]

设计模式一:简单工厂模式

简单工厂模式 概念 简单工厂模式属于创建型模式,又叫做静态工厂方法(Static Factory Method)。简单工厂模式是由一个工厂对象决定创建哪一种产品类实例。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常...[2019/9/29]

设计模式-结构型-享元模式

享元模式(Flyweight): 定义:   运用共享技术有效地支持大量细粒度对象的复用。享元模式可以避免大量相似类的开销,在软件开发中如果需要生成大量细粒度的类实例,而这些类实例除了几个参数外基本上相同,那么这时就可以使用享元模式大幅度减少实例化类的数量。如果能把这些参数移动到...[2019/9/29]

装饰者模式

      装饰者模式能够动态地将责任附加到对象上,在扩展对象功能方面比继承更加灵活,具体来说,装饰者模式将行为委托给相应的包装对象,并添加上自己的对应逻辑来实现特定的功能。装饰者模式的UML图如下:      &nb...[2019/9/29]

设计模式-结构型-组合模式

组合模式(Composite): 定义:   组合模式又叫部分整体模式,它是一种将对象组合成树状的层次结构模式,用来表示"部分-整体"的关系,使用户对单个对象和组合对象具有一致的访问性。 组合模式的角色:   1)抽象构建(Component):它的主要作用是为树叶构件和...[2019/9/29]

设计模式 - 七大设计原则(四)- 合成复用原则与设计原则总结

设计模式 - 七大设计原则(四)- 合成复用原则与设计原则总结

概述 简单介绍一下七大设计原则: 开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭 依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体 单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化 接口隔离原则:使用多个专门的接口,而不是使用一个总接口 迪米特法则(最...[2019/9/27]

通俗易懂设计模式解析——命令模式

前言   今天我们一起来看行为型设计模式中的命令模式、何为命令模式呢?先谈命令——我现在需要对某一条信息进行删除,我进行点击删除按钮。后台执行删除的命令、对信息进行删除。那么我们要讲的命令模式又是什么呢?命令模式就是把一个操作或者行为抽象为一个对象。然后通过对命...[2019/9/27]

设计模式模式(四):建造者模式(生成器模式)

设计模式模式(四):建造者模式(生成器模式)

建造者模式主要解决问题:   具备若干成员,当其中一个成员发生变化,其它成员也随着发生变化。   这种复杂对象的生成需要使用建造者模式来生成。 建造者设计模式的结构图:   来源:http: c.biancheng.net/view/1354.html &nbs...[2019/9/26]

设计模式 - 七大设计原则(一)

设计模式 - 七大设计原则(一) 概述 简单介绍一下七大设计原则: 开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭 依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体 单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化 接口隔离原则:使用多个专门的接口,而不是...[2019/9/26]

设计模式 - 七大设计原则(二)

设计模式 - 七大设计原则(二)

概述 简单介绍一下七大设计原则: 开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭 依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体 单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化 接口隔离原则:使用多个专门的接口,而不是使用一个总接口 迪米特法...[2019/9/26]

设计模式-结构型-装饰者模式

装饰者模式(wrapper):   允许向一个现有的对象添加新的功能,同时又不改变其结构。装饰器模式是一种用于代替继承的技术,无需通过继承增加子类就能扩展对象的新功能。使用对象的关联关系代替继承关系,更加灵活,同时避免类型体系的快速膨胀。 示例:英雄学习技能  ...[2019/9/25]

Python 单例设计模式用法实例分析

本文实例讲述了Python 单例设计模式用法。分享给大家供大家参考,具体如下: demo.py(单例): cla MusicPlayer(object): # 类属性 记录对象引用 instance = None def __new__(cls, *args, ...[2019/9/24]

设计模式-结构型-桥接模式

设计模式-结构型-桥接模式

桥接模式(Bridge):   桥接是用于把抽象化与实现化解耦,使得两者可以独立变化。 桥接模式的角色:       1)抽象化角色(Abstraction):它是用于定义抽象接口,通常是抽象类而不是接口,其中定义了一个Implementor(实现接口)类型的对...[2019/9/23]

设计模式-结构型-代理模式

代理模式(Proxy):   代理模式就是给某一个对象提供一个代理,并由代理对象控制对原有对象的引用。在一些情况下,一个客户不想或者不能直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。例如windows桌面端的快捷方式就是一个代理。 代理模式按照使用目的可以...[2019/9/23]

观察者模式

观察者模式

      观察者模式允许多个观察者订阅一个主题,当主题的状态发生变化时,能够将这种变化通知到每个观察者。从主题的角度看,这是典型的一对多关系,即一个主题可以对应多个观察者。以订阅邮件为例,当订阅某一类主题内容(例如娱乐新闻,动漫等)时,如果该主题...[2019/9/23]

SSH框架之Spring第四篇

1.1 JdbcTemplate概述 : 它是spring框架中提供的一个对象,是对原始JdbcAPI对象的简单封装.spring框架为我们提供了很多的操作模板类. ORM持久化技术 模板类 ...[2019/9/23]

设计模式

  没有什么设计模式是完美无缺的,一个设计模式就是解决一类的问题,通常设计模式在解决一类问题的同时,还会带来别的问题,我们设计者要做的事,就是扬长避短。 1、创建型设计模式,5个===》关注对象的创建 2、结构型设计模式,7个===》关注类与类之间的关系 3、行为设计模式,1...[2019/9/20]

设计模式之单例模式

设计模式之单例模式

单例模式的好处:   单例模式的好处就是单例,就是去阿奴唯一的一个实例,应对一些特殊情况,比如数据库连接池(内置了资源)全局唯一奥玛生成器,单例可以避免重复创建,但是也会常驻内存,除非真的有必要,否则不要用单例模式。 单例模式:   1、够高函数私有化,避免别人还去new ...[2019/9/20]

设计模式-原型模式

单例的基础上升级了一下,把对象从内存层面复制了一下,然后返回。是个新对象,但是又不是new出来的。 <summary> 原型模式:单例的基础上升级了一下,把对象从内存层面复制了一下,然后返回 是个新对象,但是又不是new出来的 < u...[2019/9/20]

设计模式-抽象工厂

抽象工厂:创建对象,创建一组密不可分的对象 创建产品簇,多个对象是个整体,不可分割 工厂+约束 倾斜的可扩展性设计,增加产品很麻烦 <summary> 一个工厂负责一些产品的创建 产品簇 单一职责就是创建完整的产品簇 继...[2019/9/20]

设计模式-适配器模式

适配器模式:解决重构的问题,新东西和旧系统不吻合,通过组合/继承进行配 适配器:插座,电源适配器,做个转接的 程序员已经确定好规范IHelper,新增了一个RedisHelper----第三方,二者规范不一致,就是没实现接口 <summary> ...[2019/9/20]

设计模式-代理模式

通过代理完成对业务类的访问,包一层方便人以功能扩展。 代理模式:VPN代理,翻墙代理,火车票代理等。 通过代理业务类去完成对真实业务类的调用,代理类不能扩展业务功能,在不修改RealSubject前提下,插入功能。 包一层:没有什么技术问题是包一层解决不了的,如果有,那么就再...[2019/9/20]

设计模式-观察者设计模式

一个对象的动作触发多个对象的行为,通过观察者可以去掉对象的依赖,支持各种自定义和扩展。 观察者模式,还要从那只申请的猫开始说起。 猫叫一声之后触发:   Baby Cry()、Brother Trun()、Dog Wang()、Father Roar()、Mothor Whi...[2019/9/20]

面向切面编程AOP

面向切面编程AOP

最开始接触AOP这个概念,是在大学Java课程中(具体哪本忘记了,JavaWeb?)接触到的。当时的理解就是,一个请求过来,自上而下,突然从中间切一刀。从那个图是这样理解的,文字描述的都忘记了。关于AOP的博客有好多,在工作中需要用到,我也是看着博客,外加视频学习来理解的。 http...[2019/9/20]

单例模式 - spring-effort

1.单例模式:   这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象创建。这个类提供一种访问方式访问其唯一的对象的方式,   可以直接访问,不需要实例化该类对象。   2.特点:   1.单例类只能有一个实例。   2.单例类必须...[2019/9/20]

349
7
记录数:923 页数:6/19首页上一页12345678910下一页尾页
加载更多