解释器模式 解释器模式(Interpreter Pattern):定义一个语言的文法,并且建立一个解释器来解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。解释器模式是一种类行为型模式 示例1 Context;包含解释器之外的一些全局信息 AbstractExpression:抽象解释 ...
分类:
其他好文 时间:
2019-12-06 09:49:40
阅读次数:
77
1 设计模式简介 设计模式是构建大型软件系统最强大的方法之一,优化软件架构和设计已经逐渐成为软件开发和维护过程中的一个重要课题。 面向对象设计原则: 开放封闭原则 控制反转原则 接口隔离原则 单一职责原则 替换原则 设计模式 :特定问题的解决方案 模式的分类: 创建型模式 结构型模式 行为型模式 " ...
分类:
编程语言 时间:
2019-12-03 14:16:04
阅读次数:
71
1. 根据目的来分 根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式 3 种。 创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF 中提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。 结构型模式:用于描述如何将类 ...
分类:
其他好文 时间:
2019-11-30 16:28:49
阅读次数:
89
一、设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责 ...
分类:
其他好文 时间:
2019-11-25 23:23:52
阅读次数:
79
策略模式 一、定义:定义一组算法,将每个算法封装起来,并且他们可以相互替换。 二、特点:行为型模式,封装各种类型的规则,降低算法类和使用算法类之间的耦合。 三、示例代码,商场的优惠活动,有两种优惠方式,一种是打8折,一种是满500价格减少50。利用了简单工程模式和策略模式相结合。 //抽象算法类,定 ...
分类:
其他好文 时间:
2019-11-25 09:44:14
阅读次数:
72
观察者模式 当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。 介绍 意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 主要解决: ...
分类:
其他好文 时间:
2019-11-19 01:23:20
阅读次数:
77
中介者模式 中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护。中介者模式属于行为型模式。 介绍 意图:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从 ...
分类:
其他好文 时间:
2019-11-19 01:06:38
阅读次数:
123
迭代器模式 迭代器模式(Iterator Pattern)是 Java 和 .Net 编程环境中非常常用的设计模式。这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。 迭代器模式属于行为型模式。 介绍 意图:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 ...
分类:
其他好文 时间:
2019-11-19 00:45:03
阅读次数:
68
策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 介绍 意图:定义一系 ...
分类:
其他好文 时间:
2019-11-17 01:52:23
阅读次数:
85
模板模式 在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 介绍 意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变 ...
分类:
其他好文 时间:
2019-11-17 01:22:24
阅读次数:
60