本文主要是介绍GOF23设计模式【更新ing】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
开始暑期学习新篇章标题
文章目录
- 一、设计模式概述
- 1.1 设计模式定义
- 1.2 设计模式7大原则
- 1.3 设计模式的重要性
- 二、创建型设计模式
- 单例模式
- 三、结构型设计模式
- 四、行为型设计模式
一、设计模式概述
1.1 设计模式定义
用来解决软件设计中常见的问题。它们像是经验丰富的老手总结出来的“诀窍”,可以让你更轻松地写出好的、易维护的代码。每个模式都像一个蓝图,您可以自定义以解决代码中的特定设计问题。
而且,设计模式并不是一种死板的规定,而是一种思维模式,你可以根据自己的情况和需求来运用它们。设计模式通常包括了问题的描述、解决方案的结构、使用场景以及相应的优缺点。
常见的设计模式按照目的可以分为创建型模式、结构型模式和行为型模式。
创建型模式
:单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式。
结构型模式
:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模
式。
行为型模式
:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模
式、解释器模式、状态模式、策略模式、职责链模式、访问者模式。
1.2 设计模式7大原则
原则 | 描述 |
---|---|
单一职责原则 | 一个类应该只负责一项职责,只有一个引起它变化的原因。 |
开闭原则 | 软件实体应该是可扩展的,而不可修改的。 |
里氏替换原则 | 所有引用基类的地方必须能透明地使用其子类的对象。 |
依赖倒置原则 | 高层模块不应该依赖于底层模块,二者都应该依赖于抽象;抽象不应该依赖于细节,细节应该依赖于抽象。 |
接口隔离原则 | 不应该强迫客户端依赖于它们不用的接口。 |
迪米特法则 | 一个对象应该对其他对象有尽可能少的了解。 |
合成复用原则 | 尽量使用对象组合,而不是继承来达到复用的目的。 |
1.3 设计模式的重要性
提高代码质量和可维护性
:可以使代码更加清晰、结构化,易于理解和维护。加速开发过程
:可以避免重复造轮子,减少开发时间。增强代码的灵活性和可扩展性,降低维护成本
:良好的设计模式,在项目不断扩大时,模块依旧易于理解、修改和扩展。
二、创建型设计模式
详细介绍单例模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式。
单例模式
确保一个类最多只有一个实例,并提供一个全局访问点。
故事开始于一个小镇,这个小镇上有一个叫做老王的,他有7-8个老婆。他的每一个老婆要干活的时候都会喊他过去干。他的每一个老婆对外宣称他们自己的老公的时候指的是同一个老公。
- 实现方式:懒汉模式,饿汉模式
【饿汉式 】的话对象直接被创建,如果对象很大,而一时半会又没被用上,就会导致内存空间的浪费;懒汉的话不会导致内存空间的浪费,被用上了我才创建,但实现一般都较为复杂。
[单例模式]懒汉式加载 :时间换空间
public class C01_Singleton { private
这篇关于GOF23设计模式【更新ing】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!