![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
Dennis.Chen
这个作者很懒,什么都没留下…
展开
-
设计模式之适配器模式
设计模式之适配器模式一、适配器模式介绍 适配器是将两个不兼容的类融合在一起,将不同的东西通过一种转化使得他们能够协作起来。二、适配器模式的定义 适配器模式把一个类的接口变换长客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。三、适配器模式的使用场景 1、系统需要使用现有的类,而此类的接口不符合系统需求,即接口不兼容。 2、想要建立一个可原创 2018-01-11 12:01:34 · 261 阅读 · 0 评论 -
设计模式之--命令模式(让程序畅通执行)
一、命令模式介绍 命令模式(Command Pattern)是行为型设计模式之一。命令模式相对于其他的设计模式来说并没有那么多的条条框框,其实它不是一个很“规矩”的模式,不过,就是基于这一点,命令模式相对于其他的设计模式更为灵活多变。我们接触比较多的命令模式个例无非就是程序菜单命令,如在操作系统中,我们点击“关机”命令,系统就会执行一系列的操作,如果先是暂停处理事件,保存系统的一些配置,然后结束...原创 2018-02-13 17:31:18 · 476 阅读 · 0 评论 -
设计模式之--模板方法模式(抓住问题的核心)
一、模板方法模式介绍 在面向对象开发过程中,通常会遇到这样的一个问题,我们知道一个算法所需要的关键步骤,并确定了这些步骤的执行顺序,但是,某些步骤的具体实现是未知的,或者说某些步骤的实现是会随着环境的变化而改变的,例如,执行程序的流程大致如下: (1)检查代码的正确性; (2)链接相关的类库; (3)编译相关代码; (4)执行程序。 对于不同的程序设计语言,上述4个步骤都是不一样的,但...原创 2018-02-11 14:14:32 · 348 阅读 · 0 评论 -
设计模式之--装饰模式
一、装饰模式的介绍 装饰模式(Decorator Pattern)也称为包装模式(Wrapper Pattern),结构型设计模式之一,其使用一种对客户端透明的方式来动态地扩展对象的功能,同时它也是继承关系的一种替代方案之一。在现实生活中也可以看见很多装饰模式的例子,或者可以大胆地说装饰模式无处不在,就拿人来说,人需要各式各样的衣着,不管你穿着怎样,但是,对于个人的本质来说是不变的,充其量只是在原创 2018-01-30 11:32:35 · 240 阅读 · 0 评论 -
设计模式之--迭代器模式
一、迭代器模式介绍 迭代器模式(Iterator Pattern)又称为(Cursor)模式,是行为设计模式之一。迭代器模式算是一个比较古老的设计模式,其源于对容器的访问,比如Java 中的 List、Map、数组等,我们知道对容器对象的访问必然会涉及遍历算法,我们可以将遍历的方法封装在容器中,或者不提供遍历方法。如果我们将遍历的方法封装到容器中,那么对于容器来说就承担了过多的功能,容器类不仅要原创 2018-02-02 17:47:11 · 305 阅读 · 0 评论 -
享元模式-对象共享、避免创建多对象
一、享元模式介绍 享元模式(Flyweight-轻量级)是对象池的一种实现。享元模式用来尽可能减少内存使用量,它适用于可能存在大量重复对象的场景,来缓存可共享的对象,达到对象共享、避免创建过多对象的效果,这样一来就可以提升性能,避免内存移除等。 享元对象中的部分状态是可以共享的,可以共享的状态成为内部状态,内部状态不会随着环境变化;不可共享的状态则称之为外部状态,他们会随着环境的改变而改变。在原创 2018-01-25 16:44:51 · 300 阅读 · 0 评论 -
设计模式之--策略模式
一、策略模式的介绍软件开发中常遇到这种情况:实现某一个功能可以有多种算法或者策略,我们根据实际情况选择不同的算法或者策略来完成该功能。例如,排序算法,可以使用插入排序、归并排序、冒泡排序等。 针对这种情况,一种常规的方法是将多种算法写在一个类中。例如,需要提供多种排序算法,可以将这些算法写到一个类中,没一个方法对应一个具体的排序算法;当然,也可以将这些排序算法封装在一个统一的方法中,通过if原创 2018-02-01 14:30:21 · 197 阅读 · 0 评论 -
设计模式之--组合模式
一、组合模式的介绍 组合模式(Compisite Pattern)也称为部分整体模式(Part-Whole Pattern),结构型设计模式之一,它将一组相似的对象看作一个对象处理,并根据一个树状结构来组合对象,然后提供一个统一的方法去访问相应的对象,以此忽略掉对象与对象集合之间的差别。生活中一个比较典型的例子就是组织结构的树状图如下: 二、组合模式的定义 将对象组合成树形结构以原创 2018-01-22 23:08:59 · 888 阅读 · 1 评论 -
设计模式之工厂方法模式
设计模式之工厂方法模式一、工厂方法模式介绍 工厂方法模式(Factory Pattern)是创建型设计模式之一,是一种结构简单的模式,在我们平时开发中应用很广泛。二、工厂方法模式的定义 定义一个用于创建对象的接口,让子类决定实例化哪个类。三、工厂方法模式的使用场景 在任何需要生成复杂对象的地方,都可以使用工厂方法模式。复杂对象适合使用工厂模式,用new就可以完成创建的对象无需使原创 2018-01-12 16:04:22 · 178 阅读 · 0 评论 -
设计模式之--观察者模式(解决、解耦的钥匙)
一、观察者模式介绍 观察者模式是一个使用频率非常高的模式,它最常用的地方是 GUI 系统、订阅–发布系统。因为这个模式的一个重要作用就是解耦,将被观察者和观察者解耦,使得他们之间的依赖性更小,甚至做到毫无依赖。以 GUI 系统来说,应用的 UI 具有易变性,尤其是前期随着业务的改变或者产品的需求修改,应用界面也会经常性变化,但是业务逻辑基本变化不大,此时, GUI 系统需要一套机制来应对这种情况...原创 2018-02-22 17:32:08 · 544 阅读 · 0 评论