声明:本篇文章是博主刘伟(LoveLion)设计模式专栏的学习笔记,感兴趣的话推荐大家去看他的专栏。
专栏导学文章地址:https://blog.csdn.net/LoveLion/article/details/17517213?spm=1001.2014.3001.5502
1、设计模式的概念:设计模式是在软件开发过程中为一些重复出现的软件设计问题提供的合理、有效的解决方案。
模式和软件模式的概念:
- 模式是在特定环境下人们解决某类重复出现问题的一套成功或有效的解决方案。
A pattern is a successful or efficient solution to a recurring problem within a context- 软件模式是在软件开发过程中为一些重复出现的问题提供的合理、有效的解决方案。
2、GoF(Gang of four):四人帮,由四位著名的软件工程学者组成。
3、GoF将“模式”的概念引入软件工程领域,标志着设计模式的诞生。
4、在软件开发生命周期的每个阶段都存在着一些被认同的模式。
5、软件模式的基础结构由四部分组成,包括:
(1)问题描述(待解决的问题是什么)
(2)前提条件(在何种环境或约束条件下使用)
(3)解决方案(如何解决)
(4)效果(有哪些优缺点)
6、设计模式是一套被反复使用的、多数人知晓的、经过分类编目的代码经验的总结。
使用设计模式是为了可重用代码,让代码更容易被他人理解并且保证代码可靠性。
7、设计模式的主要组成要素包括:
(1)模式名称
(2)问题描述
(3)解决方案
(4)效果
8、设计模式按照用途可分为:创建型模式、结构型模式、行为型模式。
创建型模式:用于描述如何创建对象;
结构型模式:用于描述如何实现类或对象的组合;
行为型模式:用于描述类或对象如何交互以及如何分配职责。
9、设计模式根据模式是用于处理类之间的关系还是对象之间的关系可分为:类模式和对象模式。
而在实际使用中,我们会将这两种分类方式结合起来进行使用,比如:单例模式是对象创建型模式。
10、设计模式一共有24种,包括GoF的23种设计模式和简单工厂模式。其中,创建型、结构型、行为型设计模式的数量分别为6个、7个和11个。
11、24种设计模式一览表,可跳转到刘伟的博客《从招式与内功谈起——设计模式概述(二)》进行查看。
刘伟:《从招式与内功谈起——设计模式概述(二)》