百度
360搜索
搜狗搜索

23种设计模式,23种设计模式记忆口诀详细介绍

本文目录一览:

  • 1、
  • 2、

JAVA23种设计模式

**一、三大类别设计模式简介**:

**1. 创建型模式(共5种)**:

* 工厂方法模式:提供了一种在不指定具体类的情况下创建对象的方式。

* 抽象工厂模式:允许创建一系列相关或相互依赖的对象,无需明确指定它们的类。

* 单例模式:确保一个类仅有一个实例,并提供一个全局访问点。

* 建造者模式:将一个复杂对象的构建与其表示分离开来,使得同样的构建过程可以创建不同的表示。

* 原型模式:通过复制现有对象来创建新对象。

**2. 结构型模式(共7种)**:

* 适配器模式:将一个类的接口转换成客户端所期望的另一种接口,从而使原本由于接口不兼容而无法协同工作的类能够一起工作。

* 装饰器模式:动态地给一个对象添加一些额外的职责,就扩展功能而言,装饰器模式相比继承更加灵活。

* 代理模式:为其他对象提供一个代理以控制这个对象的访问。比如远程代理,用于对远程对象进行访问。

* 外观模式:提供一个统一的接口用于访问子系统中的一群接口,从而简化对子系统的使用。

* 桥接模式:将抽象部分与实现部分分离,使它们可以独立变化。

* 组合模式:将对象组合成树形结构以表示部分整体的层次结构。

* 享元模式:通过共享对象来减少内存中的对象数量,以实现性能优化。

**3. 行为型模式(共11种)**:

* 策略模式:定义了一系列算法,并将每一个算法封装起来,使它们可以互相替换。

* 模板方法模式:在一个方法中定义了一个算法的骨架,允许子类在不改变算法结构的情况下重定义某些步骤的具体内容。

* 观察者模式:当一个对象的状态改变时,所有依赖于它的对象都会得到通知并被自动更新。

* 其他行为型模式如迭代子模式、责任链模式、命令模式等,均是描述对象之间如何交互和通讯的。

**二、设计模式的六大原则**:

**1. 开闭原则(Open/Close Principle)**: 对扩展开放,对修改关闭。意味着你可以轻松地向软件添加新功能,而无需修改现有的代码。

**2. 里氏代换原则(Liskov Substitution Principle)**: 允许使用衍生类来替换基类,而不会影响系统的正确性和可维护性。这确保了基类的可复用性以及衍生类的可扩展性。

**3. 依赖倒转原则(Dependence Inversion Principle)**: 强调程序应依赖于抽象接口,而不是具体实现。这有助于减少代码的耦合度并提高可维护性。

**4. 接口隔离原则(Interface Segregation Principle)**: 将大的接口拆分成更小的、更具体的接口,每个接口只服务于特定的客户端或子系统。这有助于降低类之间的依赖关系和耦合度。

**5. 迪米特法则(Demeter Principle - 最少知道原则)**: 一个实体应当尽量少的与其他实体发生相互作用,以保持系统的模块化和高内聚性。这有助于减少不必要的依赖和复杂性。

**6. 合成复用原则(Composite Reuse Principle)**: 通过合成或聚合的方式复用代码和功能,而不是通过继承来实现复用。这有助于避免继承带来的脆弱性和破坏类的封装性。

23种设计模式记忆口诀

一段便于记忆的口诀,详细描述了23种设计模式,让人印象深刻:

一、创建型模式五宗最

口诀:原建工单抽,五法创造新世界。

解释:五种创建型模式包括原型模式(原)、建造者模式(建)、工厂方法模式(工)、单例模式(单)和抽象工厂模式(抽),这五种模式共同创造出一个崭新的设计世界。

二、结构型模式七大宝

口诀:带装备,组合桥享。外国人为适应而生辉。

解释:七种结构型模式包括代理模式(带)、适配器模式(装)、装饰器模式(饰)、外观模式(组合)、桥接模式(桥)、享元模式(享),这些模式如同宝石般,让外国人都为之赞叹。

三、行为型模式十一种奇

口诀:多次迭代中,命令责状显;车模状态惊,慌忙解开衣。

解释:十一种行为型模式如诗中所说。通过“多次”迭代(迭代子模式)、“命令”执行(命令模式)和“责任”传播(责任链模式),各种设计策略相互映衬,创造出惊异的模型设计(策略、模板等)。如同一个意想不到的转变让人惊讶万分(状态),整个过程中不得不立刻采取行动(访问者模式),甚至需要慌忙解开一些束缚(解释器模式)。

此口诀不仅易于记忆,而且富有诗意,能够有效地帮助记忆这23种设计模式的名称和特点。

阅读更多 >>>  js数组添加对象,js 怎么在数组前面加一个对象元素

文章数据信息:

本文主要探讨:"23种设计模式,23种设计模式记忆口诀", 浏览人数已经达到36次, 首屏加载时间:1.293 秒。