设计模式简介

简介

软件工程中,设计模式是指软件设计问题的推荐方案。
设计模式一般是描述如何组织代码和使用最佳实践来解决常见的设计问题。需谨记在心的一点是:设计模式是高层次的方案,并不关 注具体的实现细节,比如算法和数据结构

设计模式种类

第一部分:创建型模式
介绍处理对象创建的设计模式。

1.工厂模式
工厂设计模式(工厂方法和抽象工厂)来初始化对象,与直接实例化对象相比,使用工厂模式的优势。

2.建造者模式
对于由多个相关对象构成的对象,介绍如何简化其创建过程。
疑问:什么是由多个相关对象构成的对象?

3.原型模式
介绍如何通过完全复制(也几十克隆)一个已有对象来创建一个新的对象。

第二部分:结构型模式
介绍处理一个系统中不同实体(类,对象等)之间关系的设计模式。

4.适配器模式
介绍如何以最小的改变实现已有代码与外来接口(eg:一个外部代码库)的兼容。

5.修饰器模式
介绍如何无需使用继承也能增强对象的功能。

6.外观模式
介绍如何创建单个入口点来隐藏系统的复杂性。

7.享元模式
介绍如何通过复用一个对象池中的对象来提高内存利用率以及应用性能。

8.MVC模式(模型-控制器-视图)
介绍如何避免业务逻辑与用户界面代码的耦合,提高应用的可维护性。

9.代理模式
介绍如何增加额外的保护层,提高应用的安全性。

第三部分:行为型模式
介绍处理系统实体之间通信的设计模式。

10.责任链模式
介绍如何向多个接受者发送请求。

11.命令模式
介绍如何让应用能够取消已经执行的操作。

12.解释器模式
介绍如何基于Python创建一种简单的语言,便于领域专家使用,而无需学习Python编程。

13.观察者模式
介绍如何在对象发生变化时,通知已注册的相关者。

14.状态模式
介绍如何创建一个状态机以对问题进行建模,并说明这种技术的优势。

15.策略模式
介绍如何基于某些输入标准(eg. 元素大小)在程序运行期间从多个可用算法中选择一个。

16.模板模式
介绍如何明确区分一个算法的通用与不通用部分,以避免不必要的代码复制。

你可能感兴趣的:(设计模式简介)