设计模式主要分三个类型:创建型、结构型和行为型。其中创建型有:一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。三、Factory Method,工 ...
分类:
其他好文 时间:
2019-03-26 16:41:19
阅读次数:
153
一、定义: 观察者模式(又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 二、观察者模式中需要如下几种角色: 1、Sub ...
分类:
其他好文 时间:
2019-03-14 18:38:14
阅读次数:
219
一、设计模式的分类: 设计模式在大体上可以分为三类: 1.创建型模式 通常和对象的创建有关,涉及到对象实例化的方式。 2.结构型模式 描述的是如何组合类和对象来获取更大的结构。 3.行为型模式 用来对类或对象怎样交互和怎样分配职责进行描述。 二、创建型模式主要包含五种设计模式 1.工厂方法模式 2. ...
分类:
其他好文 时间:
2019-03-09 11:36:11
阅读次数:
191
一、定义 封装了一组对象如何交互的对象 补充定义:通过使对象明确地相互引用来促进松散耦合,并允许独立地改变它们的交互 类型:行为型 二、适用场景 1、系统中对象之间存在复杂的引用关系,产生的相互依赖关系结构混乱且难以理解 2、交互的公共行为,如果需要改变行为则可以增加新的中介者类。 (聊天室:其中一 ...
分类:
其他好文 时间:
2019-03-02 14:49:31
阅读次数:
207
一、定义 将“请求”封装成对象,以便使用不同的请求 命令模式解决了应用程序中对象的职责以及它们之间的通信方式。(发送者和接收者完全解耦) 类型:行为型 二、适用场景 1、请求调用者和请求接收者需要解耦,使得调用者和接收者不直接交互。 2、需要抽象出等待执行的行为 三、优点 1、降低耦合 2、容易扩展 ...
分类:
其他好文 时间:
2019-03-02 13:38:29
阅读次数:
192
一、定义 给定一种语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解析语言中的句子。 简单理解:为了解释一种语言,而为语言创建的解释器。 C#代码,Java代码的编译器就相当于一个解释器。 类型: 行为型 二、适用场景 1、某个特定类型问题发生频率足够高 如程序中有很多日志,对 ...
分类:
其他好文 时间:
2019-02-28 21:22:18
阅读次数:
148
定义 策略模式(Strategy Pattern):定义一系列算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化,也称为政策模式(Policy)。是一种对象行为型模式。 动机 完成一件事可以有 作用 使得客户端可以根据外部条件选择不同策略来解决不同问题 1. 策 ...
分类:
其他好文 时间:
2019-02-27 20:39:27
阅读次数:
219
一、定义: 定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化不会影响到使用算法的用户 方法中有大量的if...else... 类型:行为型 二、适用场景 系统有很多类,而他们的区别仅仅在于他们的行为的不同 一个系统需要动态地在几种算法(策略)中选择一种 三、优点 1、开闭原则 ...
分类:
其他好文 时间:
2019-02-27 13:07:48
阅读次数:
187
LieBrother原文: "行为型模式:命令模式" 十一大行为型模式之三:命令模式。 简介 姓名 :命令模式 英文名 :Command Pattern 价值观 :军令如山 个人介绍 : Encapsulate a request as an object,thereby letting you p ...
分类:
其他好文 时间:
2019-02-22 21:41:52
阅读次数:
216
概述 设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。 使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。 设计模式可以分为三大类,分 ...
分类:
其他好文 时间:
2019-02-20 17:24:09
阅读次数:
167