导图社区 设计模式的内容
这是一个关于设计模式的内容的思维导图,讲述了设计模式的内容的相关故事,如果你对设计模式的内容的故事感兴趣,欢迎对该思维导图收藏和点赞~
编辑于2020-10-04 09:51:49设计模式的内容
设计模式的概念
设计模式的定义
设计模式是一种可复用的解决方案,用于解决软件开发中的常见问题
设计模式的分类
设计模式可以分为创建型、结构型和行为型三种类型
设计模式的原则
单一职责原则
一个类应该只有一个引起变化的原因
开放封闭原则
软件实体应该对扩展开放,对修改关闭
里氏替换原则
子类型必须能够替换其父类型
依赖倒置原则
高层模块不应该依赖低层模块,两者都应该依赖抽象
接口隔离原则
客户端不应该依赖它不需要的接口
迪米特法则
一个对象应该对其他对象保持最少的了解
设计模式的种类
创建型模式
工厂方法模式
提供一个创建对象的接口,让子类决定实例化哪一个类
抽象工厂模式
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的具体类
单例模式
确保一个类只有一个实例,并提供一个全局访问点
原型模式
用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象
构建器模式
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示
结构型模式
适配器模式
将一个类的接口转换成客户希望的另外一个接口
桥接模式
将抽象部分与它的实现部分分离,使它们都可以独立地变化
组合模式
将对象组合成树形结构以表示“部分整体”的层次结构
装饰器模式
动态地给一个对象添加一些额外的职责
外观模式
提供一个统一的接口,用来访问子系统中的一组接口
享元模式
运用共享技术有效地支持大量细粒度的对象
行为型模式
策略模式
定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换
观察者模式
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新
模板方法模式
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中
迭代器模式
提供一种顺序访问集合对象中的各个元素,而又不暴露该对象的内部表示
状态模式
允许一个对象在其内部状态改变时改变它的行为
备忘录模式
在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态
命令模式
将一个请求封装为一个对象,从而使您可以用不同的请求对客户进行参数化
解释器模式
给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子
中介者模式
用一个中介对象来封装一系列的对象交互
访问者模式
表示一个作用于某对象结构中的各元素的操作
策略模式
定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换;