深入理解23种设计模式目录导学

深入理解23种设计模式目录导学

趁着有时间对这段时间学习的设计模式笔记进行整理,欢迎阅读的同学指出不足之处,有不懂的也可以留言交流喔😘😘

设计模式的概述

​1、 为什么会有设计模式?

2、什么是设计模式?

设计模式的七大原则

设计模式的原则,其实就是程序员在设计 设计模式 时,应当遵守的原则,也是各种设计模式的基础(即:设计模式为什么这样设计的依据)

设计模式原则之一:单一职责原则
设计模式原则之二:接口隔离原则
设计模式原则之三:依赖倒转原则
设计模式原则之四:里氏替换原则
设计模式原则之五:开闭原则
设计模式原则之六:迪米特法则
设计模式原则之七:合成复用原则

一般面试的时候面试官会问你都会哪些设计模式啊?说说你最熟悉的几个设计模式?哪些设计模式是最常见的啊?(一些比较偏僻的设计模式暂时先了解个大概即可)

为什么单例模式容易成为面试官喜欢问的问题就是因为它简单,但是面试官想通过它的简单体现出你的不简单来,想了解你对单例模式的独特见解。

一般问单例的话都会从你知道哪几种单例的写法啊?这些写法你都是死记的吗?(目的可能是看看你对这些单例模式写法之间的关联是什么,哪种写法解决了什么问题,慢慢引出最优的写法)

设计模式的三大类

创建型模式

创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”。

这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。

创建型模式分为:

单例模式

1、单例模式详解

2、破坏单例模式的几种方式

工厂模式

1、工厂模式概述

2、简单工厂模式
(简单工厂不是一种设计模式(不属于23种),反而比较像是一种编程习惯。要真把它归类为设计模式的话,那只能说它是工厂方法的一种)

3、工厂方法模式

4、抽象工厂模式

5、工厂模式的扩展

6、

原型模式

1、原型模式详解

建造者模式

1、设计模式之构建者模式

2、设计模式之构建者模式扩展

3、创建者模式对比工厂模式

七种结构型模式

结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。

由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。

结构型模式分为以下 7 种:

适配器模式提供一种机制改变原来不适合使用的接口,使之适合现在的应用;适配器模式还可以在众多原有接口的基础上新建一个接口,该新接口包含了从原有接口中精选的方法。

外观模式将新建一个外观类,该外观类通过调用原有的类库中众多的类的方式,实现外观类的所有方法。该外观类包含了某类特殊应用所需的所有方法

桥接模式将系统设计为抽象部分与实现部分,由抽象部分调用实现部分,以便使系统在抽象与实现两个维度都可以独立扩展。

代理模式

1、静态代理、JDK动态代理、CGLIB动态代理三种代理模式详解

适配器模式

1、类适配器、对象适配器模式详解

装饰者模式

1、

桥接模式

1、

外观模式
组合模式

组合模式将一个或者多个相似的对象构成组合对象 各个对象有相似的功能。该模式以相同的方式对待单独的对象与一组对象,即组合对象 例如,等同地对待树的叶子结点与树枝结点。

1、组合模式详解

享元模式

十一种行为型模式

行为型模式更侧重于关注类或对象之间的通信模式,关心算法和对象之间的责任分配,解释对象之间是怎样进行交互的,它描述为了完成一些任务,完成任务的步骤是如何划分不同的对象,以及不同的类和对象之间是如何互相发送消息的。

行为型模式分为类行为模式对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。

命令模式将操作请求封装在对象中,这样它就可以作为参数来传递,并可以被存储在历史操作类表中 以实现取消和重做操作;

中介者模式通过在对象间引入一个中介对象,避免对象间的显式引用;

策略模式是将算法封装到对象中,这样可方便指定或改变一个对象使用的算法;

模板方法模式

1、

策略模式

1、策略模式详解

命令模式

1、命令模式详解

职责链模式
状态模式

1、状态模式详解

观察者模式

状态模式****封装了兑现过的状,使得当对象的状态发生变化时 该对象可以改变自身的行为(状态变化时改变行为

1、观察者模式详解

中介者模式

1、中介者模式详解

迭代器模式

迭代器模式抽象了访问和遍历一个集合中的对象的方式;

1、迭代器模式详解

访问者模式

访问者模式封装了分布于多个类之间的行为;

1、访问者模式详解

  • 备忘录模式
  • 解释器模式

以上 11 种行为型模式,除了模板方法模式和解释器模式是类行为型模式,其他的全部属于对象行为型模式。

按照大多人的说法,其实还有两类模式:并发型模式和线程池模式。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值