设计模式的分类

GoF 的 23 种设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。

1. 根据目的来分

根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式这 3 种。

  • 创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。
  • 结构型模式:用于描述如何将类或对象按某种布局组成更大的结构,提供了代理、适配器、桥接、装饰、外观、享元、组合等 7 种结构型模式。
  • 行为型模式:用于描述类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,以及怎样分配职责。提供了模板方法、策略、命令、职责链、状态、观察者、中介者、迭代器、访问者、备忘录、解释器等 11 种行为型模式。

2. 根据作用范围来分

根据模式是主要用于类上还是主要用于对象上来分,这种方式可分为类模式和对象模式两种。

  • 类模式:用于处理类与子类之间的关系,这些关系通过继承来建立,是静态的,在编译时刻便确定下来了。工厂方法、(类)适配器、模板方法、解释器属于该模式。
  • 对象模式:用于处理对象之间的关系,这些关系可以通过组合或聚合来实现,在运行时刻是可以变化的,更具动态性。除了以上 4 种,其他的都是对象模式。

3.图解

注解:

GOF:《Design Patterns: Elements of Reusable Object-Oriented Software》(《设计模式》一书),由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 合著(Addison-Wesley,1995)。这几位作者常被称为"四人组(Gang of Four)"。
 
 
 
(0)

相关推荐

  • 程序猿必备系列:开发者的蓝图之初探分类

    导语:前天端午想着努力再更一篇,没想到被各种杂事耽搁了,先给大家补个端午安康.上一篇忙着说设计模式有多重要了,反而关于设计模式本身介绍的有点少,这一篇给大伙好好说说设计模式的到底有哪些. 这次就不扯闲 ...

  • [PHP小课堂]PHP设计模式之工厂方法模式

    [PHP小课堂]PHP设计模式之工厂方法模式 关注公众号:[硬核项目经理]获取最新文章 添加微信/QQ好友:[DarkMatterZyCoder/149844827]免费得PHP.项目管理学习资料

  • Python设计模式是什么?Python入门

    设计模式想必大家都比较熟悉,它是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结,使用设计模式可以让代码更容易被他人理解.保证代码的可靠性,而且使用设计模式还需要遵循一定的原则.那么P ...

  • 【重温设计模式】之002简单工厂模式

    [重温设计模式系列源码] 简单工厂模式 基本原理 含义 简单工厂模式又叫静态方法模式(因为工厂类定义了一个静态方法). 在现实生活中,工厂是生产产品的, 同样的,在设计模式中,一个负责生产" ...

  • 创建型设计模式总结

    Intro 前面几篇文章已经把创建型设计模式都介绍了,来做一个简单的总结. 创建型设计模式,就是用来创建对象的设计模式,根据要创建的对象的复杂度以及是否允许多实例以及是否需要容易扩展等多方面考虑去选择 ...

  • 设计模式系列之二:23种GoF设计模式的分类

    GoF设计模式一共有23个.一般可以按目的和作用范围来进行划分,具体划分方法如下:第一,这些模式按目的(即完成什么样任务)来划分为创建型.结构型和行为型这三种模式:创建型:用来创建对象.单例.原型.抽 ...

  • python patterns-Python中的设计模式集合

    创意设计模式 这些设计模式都是关于类实例化的.该模式可以进一步分为类创建模式和对象创建模式.虽然类创建模式在实例化过程中有效地使用了继承,但是对象创建模式有效地使用了委派来完成工作. 抽象工厂:创建多 ...

  • 最全颈椎病分类

    许多人对颈椎病的了解不深,甚至仍停留在"颈椎疼痛"这一症状上.其实由于颈椎病所表现出的不同的症状,和不同的受累病灶部位,颈椎病也分为6种.这6种颈椎病哪种最容易治疗?哪种最危险?哪 ...

  • 我国旅游业用地概念内涵及分类探讨

    对旅游业用地的界定是旅游业用地政策研究的基础问题.本文拟在对法律法规.政策文件和文献中的旅游业用地相关提法进行梳理的基础上,探讨符合我国土地管理制度和旅游业发展实践的旅游业用地概念和分类. 一.法律法 ...

  • 眼球震颤分类

    先天性眼球震颤: 因注视反射尚未发育,一般无自觉症状,视物疲劳或单眼遮盖时容易发生.多伴有视力低下.斜视.弱视或其它眼部异常如视网膜色素变性,黄斑疾病.先天性青光眼等.部分眼震可随年龄增大逐渐好转. ...

  • 【书画知识】国画的分类

    中国传统绘画的主要种类.中国画在古代无确定名称,一般称之为丹青,主要指的是画在绢.纸上并加以装裱的卷轴画.近现代以来为区别于西方输入的油画(又称西洋画)等外国绘画而称之为中国画,简称"国画& ...

  • 我国语言,方言分类。我国是一个多名族国家...

    我国语言,方言分类。我国是一个多名族国家...

  • 医疗法律|医疗纠纷常用法律规范分类汇编(2018版)

    让法律更懂医疗    让医疗更懂法律  文|吴维钦 律师 北京观韬中茂(厦门)律师事务所律师,福建中医药大学医学学士.福建省医事法学研究会理事.长期为医疗机构.医药企业.卫生行政部门.医生.患者等提供 ...

  • 全国各知识产权保护中心专利预审IPC及洛迦诺分类号

    知识产权保护中心是国家知识产权局批准设立的为市场主体提供专利申请的快速预审.快速确权.快速维权等服务的快速协同保护平台:在实践中,因为专利预审可以大大缩短专利从申请到授权的周期而被申请人或代理机构经常 ...

  • 中国茶的分类一览表

    中国茶的分类一览表