版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011815404/article/details/88749250
【概述】
设计模式,是在软件开发中,经过验证的,用于解决在特定环境下、重复出现的、特定问题的解决方案。
在 1995 年,GOF 出版的《设计模式:可复用面向对象软件的基础》,第一次将设计模式提升到理论高度,并将之规范化,该书提出了 23 种基本设计模式,自此,在可复用面向对象软件的发展过程中,新的大量的设计模式不断出现。
一个设计模式的组成可分为 4 个方面:
- 名称:设计模式的名字
- 环境和问题:描述在什么场景下,出现什么样的特定问题。
- 解决方案:描述如何解决问题
- 效果:描述模式应用的效果以及可能带来的问题,以便权衡
在软件开发中,继承是一种强耦合关系,而我们希望类之间的耦合性越低越好,通过使用不同的设计模式,可以有效的降低不同场景下不同类之间的耦合性。不同的设计模式应用场景不同,但其根本上是设计原则的具体体现,实际开发中,总是有意无意的违反一些原则使其满足要求。
关于设计原则:点击这里
【类型】
基本的 23 种设计模式大体分为三类:创建型模式、结构型模式、行为型模式
1.创建型模式
创建型模式抽象了对象实例化的过程,用来帮助创建对象的实例。
- 简单工厂(Simple Factory):点击这里
- (Abstract Factory):点击这里
- (Builder):点击这里
- (Factory Method):点击这里
- (Prototype):点击这里
- (Singleton):点击这里
2.结构型模式
结构型模式描述如何组合类和对象以获得更大的结构。
- (Adapter):点击这里
- (Bridge):点击这里
- (Composite):点击这里
- (Decorator):点击这里
- (Facade):点击这里
- (Flyweight):点击这里
- (Proxy):点击这里
3.行为型模式
- 策略模式(Strategy Pattern):点击这里
- (Chain of Responsibility):点击这里
- (Command):点击这里
- (Interpreter):点击这里
- (Iterator):点击这里
- (Mediator):点击这里
- (Memento):点击这里
- (Observer):点击这里
- (State):点击这里
- (Template Method):点击这里
- (Visitor):点击这里