设计模式

2023-03-06  本文已影响0人  Abner_XuanYuan

1、概念

设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类型的事情。

2、设计模式的原则

单一职责原则:一个类只负责一件事。
依赖倒置原则:抽象不应该依赖于具体表现,具体表现可以依赖于抽象。
开闭原则:对修改关闭,对扩展开放。
里氏替换原则:父类可以被子类无缝替换且原有功能不受任何影响。
接口隔离原则:使用过个专门的协议,而不是一个庞大臃肿的协议,且协议中的方法尽量少。
迪米特法则:一个对象应该对其他对象有尽可能少的了解,做到高内聚低耦合。

3、常用模式

1、责任链模式

为请求创建的一些接收对象,通常每一个接收者都含有另外一个接收者的引用,从而形成一个接收者链。

责任链模式
作用:避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链并且沿着这条链传递请求,直到有对象处理它为止。责任链上的处理者负责处理请求,客户只需要将请求发送到责任链上即可,无须关心请求的处理细节和请求的传递,所以责任链将请求的发送者和请求的处理者解耦了。
2、桥接模式

把抽象化与实现化解耦,使得二者可以独立变化。这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。
作用:这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。这两种类型的类可被结构化改变而互不影响。

3、适配器模式

作为两个不兼容接口的桥梁,将一个类的接口转换成希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
实现方案:通过继承、依赖。适配器继承或依赖已有的对象,实现想要的目标接口。
具体实现:以成员变量的形式集成被适配对象到适配对象中。
示例:对一个旧类中方法修改
被适配对象中:

被适配对象 1
被适配对象 2
适配对象中:
适配对象 1
适配对象 2
4、单例模式

这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。
注意事项
1、单例类只能有一个实例。
2、单例类必须自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。
作用:保证一个类仅有一个实例,并提供一个访问它的全局访问点。防止一个全局使用的类频繁地创建与销毁。
示例

单例模式 1
单例模式 2
5、命令模式

命令模式是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。
作用:将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化。

更多设计模式 -- 菜鸟教程

上一篇 下一篇

猜你喜欢

热点阅读