美文网首页
23种设计模式

23种设计模式

作者: 月下饿狼 | 来源:发表于2020-07-23 08:45 被阅读0次

一、创建型模式

1.工厂模式分3种

第一种.简单工厂模式
第二种.工厂方法模式
第三种.抽象工厂模式

2.单例模式

3.原型模式

4.建造者模式

二、结构型模式

1.适配器模式

主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。

2.桥接模式

桥接(Bridge)模式的定义如下:将抽象与实现分离,使它们可以独立变化。它是用组合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度。

桥接(Bridge)模式的【【优点】】是:

由于抽象与实现分离,所以扩展能力强;
其实现细节对客户透明。

【【缺点】】是:由于聚合关系建立在抽象层,要求开发者针对抽象化进行设计与编程,这增加了系统的理解与设计难度。

例如:宝宝的【抽象类和具体继承实现类】与 【颜色类的接口实现】分开, 然后通过把【颜色】聚合到包包抽象类 来实现包包的不同颜色,除了颜色,还可以支持更多的扩展。


image.png

3.装饰模式

例子:手机,需要其他装饰(手机壳,贴膜),定义个手机接口,
分别实现手机接口:分为具体的手机构件(完整版),装饰的手机(这个类聚合了手机(也就是有手机接口这个属性,后面会把具体的手机构件传入进去))
然后对装饰类实现两个具体的装饰类 一个添加手机壳,一个添加了贴膜


image.png

4.外观模式

image.png

5.组合模式

组合模式分为【透明式的组合模式】和【安全式的组合模式】。
例子:大学下有很多学院,不同学院也有不同系


image.png
image.png

6.享元模式

7.代理模式

代理模式分为三类:1. 静态代理 2. 动态代理 3. CGLIB代理


image.png

三、行为型模式

image.png

1.策略模式

环境类聚合了策略接口,传入不同的策略实现类,就可以实现不同的策略


image.png

2.模板方法模式

制造豆浆 过程
钩子方法(改变过程的方法)
spring ioc 应用到模板方法模式


image.png

3.迭代器模式

4.委派模式

5.观察者模式

6.责任链模式

例子:假如规定学生请假小于或等于 2 天,班主任可以批准;小于或等于 7 天,系主任可以批准;小于或等于 10 天,院长可以批准;其他情况不予批准;这个实例适合使用职责链模式实现。

7.命令模式

例子: 将军-》命令-》士兵-》执行


image.png

8.备忘录模式

9.状态模式

例子:根据状态,改变行为

10.访问者模式

11.中介模式

image.png

12.解释器模式

image.png

未完待续。。。。。

相关文章

  • 设计模式

    常用的设计模式有,单例设计模式、观察者设计模式、工厂设计模式、装饰设计模式、代理设计模式,模板设计模式等等。 单例...

  • 设计模式笔记汇总

    目录 设计原则 “依赖倒置”原则 未完待续... 设计模式 设计模式——策略模式 设计模式——装饰者模式 设计模式...

  • 设计模式

    《C#设计模式》 《C#设计模式》-设计模式概述 《C#设计模式》-面向对象设计原则 《C#设计模式》-单例模式 ...

  • 浅谈JS的一些设计模式

    @(书籍阅读)[JavaScript, 设计模式] 常见设计模式 设计模式简介 设计模式概念解读 设计模式的发展与...

  • 前端设计模式

    JS设计模式一:工厂模式jS设计模式二:单例模式JS设计模式三:模块模式JS设计模式四:代理模式JS设计模式五:职...

  • 设计模式之工厂模式

    设计模式之工厂模式 标签(空格分隔): 设计模式 工厂模式 设计模式的感念 设计模式的应用 工厂设计模式的产生 工...

  • JavaJavascript基础进阶(十七)JS中常用的设计模式

    单利设计模式、构造原型设计模式、发布订阅设计模式、promise设计模式 单利模式 构造原型设计模式 最贴近OOP...

  • 设计模式 - 目录

    设计模式01 - 单例模式 设计模式02 - 工厂模式 设计模式03 - 建造者模式 设计模式04 - 适配器模式...

  • 第1章 设计模式概述

    一、设计模式的概念 二、设计模式的历史 三、设计模式的要素 四、设计模式的分类 ■ 创建型设计模式 ■ 结构型设计...

  • iOS设计模式(3)适配器模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(4)抽象工...

网友评论

      本文标题:23种设计模式

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