美文网首页
2、设计模式的概解

2、设计模式的概解

作者: 剑心折手 | 来源:发表于2019-04-13 21:32 被阅读0次

1、创建型模式的本质,就四个字:代理生产服务类并未改变。(花絮:服务类对客户类说:我研发太累了,你找个人帮你生产吧,于是创建型5种模式产生了。)

单例模式:【客户类】→【单例类/单例方法】→ 创建【服务类】

工厂方法:【客户类】→【工厂类/工厂方法】→ 创建【服务类】

构造模式:【客户类】→【构造类/构造方法】→ 创建【服务类】

抽象工厂:【客户类】→【抽象工厂类】→【工厂类|单例方法】→ 创建【服务类】

原型模式:【客户类】→【服务类/克隆方法】→ 创建【服务类】

2、结构型模式的本质,就四个字:重新包装。新构建的模式类将服务类作为成员,就像包装盒一样。而真正服务类被隐藏在后面。服务类并未被改变。(花絮:客户类对服务类说:你的包装太不友好了,于是结构型7种模式产生了。)

组合模式:【客户类】→【组合类】→ 多个相关的【服务类】

外观模式: 【客户类】→【外观类】→ 多个无关的【服务类】

代理模式: 【客户类】→【代理类】→ 【服务类】

适配器模式: 【客户类】→【适配器类】→ 【服务类】

装饰模式: 【客户类】→【装饰类】→ 【服务类】

桥接模式: 【客户类】→【桥接类】→ 【服务类】

享元模式: 【客户类】→【享元池类】→ 【服务类】

3、行为型模式的本质,也四个字:得力助手。新构建的模式类,协助服务类一起对外向客户类提供服务。这样的话,服务类也需要在模式接口的约束下做出一些改变。一般情况下,新构建的模式类与服务类相互引用,相互成员。(花絮:服务类对自己说:这真不是人干的活,找个助手吧,于行为型11模式出现了)

解释器命令行两个模式比较特别,这里不讲了。下面*表示实现了相应接口的类)

迭代器模式: 【客户类】→ 【迭代器类 +*服务类】。需要构建迭代器类、迭代方法、服务类成员数组,而服务类需要实现迭代方法。此模式的意义在于:客户类快速访问预先加载的一组服务类实例。

观察者模式:【客户类】→ 【*服务类+观察者类】。需要构建观察者类,服务类需要管理观察者成员,并在业务改变时实时通知所有观察者。此模式的意义在于:客户类通过观察者作为助力,实时获取服务类动态。实时二字。

访问者模式:【客户类】→ 【*服务类+访问者类】 。需要构建访问者类、访问方法及服务类成员,而服务类不需要管理访问者,但需要为访问者提供访问方法,把自己的引用传给它,最后执行访问者的访问方法。此模式的意义在于:访问者种类繁多、习惯不一,而服务类只能提供单一的数据来应对。客户类通过访问类助力,减化访问逻辑。

备忘录模式:【客户类】→ 【*服务类+备忘录类】 。需要构建备忘类,而服务类也需要构建备忘类成员、实现备份方法与恢复方法,以实现对服务类状态的恢复功能。此模式的意义在于恢复二字。客户类通过备忘录类助力,实现恢复功能。

状态模式:【客户类】→ 【*服务类】 。大多数情况下不用构建专门的状态类,服务类需要实现状态成员变量、不同状态下的状态操作。

策略模式:【客户类】→ 【*服务类+策略类】 。需要构建策略类,而服务类需要创建策略成员,并在业务实现过程中,用到策略,并产生实际的效果。策略模式的意义在于业务处理过程的模式化

责任链模式:【客户类】→ 多个【*服务类】 。不需要构建责任链模式类,而服务类需要构建其它同接口服务类的指针成员,并在业务方法中实现如此逻辑(成功返回,失败指向下一个服务类)。

中介者模式:【客户类】→ 【*服务类+备忘录类】 。需要构建中介者类、通信方法,中介者类必须管理服务类(这里把服务类当成用户),而服务类必须构建中介者的成员指针、通信方法。服务类之间相互通信只能靠中介者类。

模板方法:【客户类】→ 【*服务类】 。多数情况下不需要构建出模板类,而服务类需要虚构出模板方法,实现对其下多个业务方法进行调用。这个虚构方法就是模板方法,它可以被重载。

相关文章

  • 2、设计模式的概解

    1、创建型模式的本质,就四个字:代理生产。服务类并未改变。(花絮:服务类对客户类说:我研发太累了,你找个人帮你生产...

  • 设计模式概

    单例模式(传统意义上的) 应用场景 当该实例是没有状态(没有变量等),并且在外部调用时可以使用单例模式不管你并发有...

  • 23种常用设计模式

    基础知识 设计模式概述 从招式与内功谈起——设计模式概述(一):设计模式从何而来? 从招式与内功谈起——设计模式概...

  • 23种常用设计模式

    基础知识 设计模式概述 从招式与内功谈起——设计模式概述(一):设计模式从何而来? 从招式与内功谈起——设计模式概...

  • 23种常用设计模式

    基础知识 设计模式概述 从招式与内功谈起——设计模式概述(一):设计模式从何而来? 从招式与内功谈起——设计模式概...

  • 设计模式之观察者设计模式

    最近补一下设计模式相关的知识,关于观察者设计模式主要从以下几个方面来学习,具体如下: 什么是观察者设计模式 关键概...

  • 040_wz_hm_单例

    单例设计模式 设计模式:设计模式时前人工作的总结和提炼,通常被人们广泛流传的设计模式都是针对某一特定问题的成熟的解...

  • 设计模式 | 解释器模式及典型应用

    微信原文:设计模式 | 解释器模式及典型应用 博客原文:设计模式 | 解释器模式及典型应用 本文主要介绍解...

  • 设计模式

    设计模式要干的事情就是解耦。创建型模式是将创建和使用代码解耦,结构型模式是将不同功能代码解耦,行为型模式是将不同的...

  • 对 .Net的基础 脑图汇总

    细节整理:一、设计模式,23种设计模式、6种原则:原则:场景触发-解决问题-总结沉淀-推广应用 23种设计模式,解...

网友评论

      本文标题:2、设计模式的概解

      本文链接:https://www.haomeiwen.com/subject/hvirwqtx.html