设计模式的分类

设计模式的分类有很多种方法,本文主要介绍GOF(Gangof Four)设计模式分类和POSA(Pattern-Oriented Software Architectur,面向模式的软件架构)设计模式分类。

7.2.1 GOF设计模式分类

20 世纪 90年代,Erich Gamma 等4人,也就是通常所说的 GOF(Gang of Four,"四人帮")从建筑设计领域将设计模式引人到计算机科学领域时,根据以下两条准则对设计模式进行了分类。第一,根据目的准则,设计模式可分为创建型(Creational)、结构型(Structural)、行为型(Behavioral)三种;第二,根据范围准则,设计模式可分为类模式和对象模式,类模式处理类和子类之间的关系,这些关系通过继承建立,是静态的,在编译时刻已经确定下来了。对象模式处理对象之间的关系,这些关系在运行时刻是可以变化的,具有动态性。依据以上两种分类准则,表7.1形象地表示出了设计模式的分类。

创建型类模式将对象的部分创建工作延迟到子类,而创建型对象模式则将它延迟到另一个对象中。

结构型类模式使用继承机制类组合类,而结构型对象模式则描述了对象的组装方式。

行为型类模式使用继承描述算法和控制流,而行为型对象模式则描述一组对象怎样协作完成单个对象所无法完成的任务。

相关推荐
014-code16 小时前
日志规范:怎么写才不算写废话
java·开发语言·设计模式·日志
楼田莉子17 小时前
同步/异步日志系统:日志落地模块\日志器模块\异步日志模块
linux·服务器·c++·学习·设计模式
郝学胜-神的一滴18 小时前
神经网络参数初始化:从梯度失控到模型收敛的核心密码
人工智能·pytorch·深度学习·神经网络·机器学习·软件构建·软件设计
QH1392923188019 小时前
KEYSIGHT N9030B PXA信号/频谱分析仪
科技·嵌入式硬件·集成测试
郝学胜-神的一滴1 天前
从零起步:CMake基础入门与实战跨平台编译
c++·软件工程·软件构建·cmake
kyriewen111 天前
代码写成一锅粥?这5种设计模式让你的项目“起死回生”
前端·javascript·设计模式·typescript·ecmascript·html5
kyriewen1 天前
代码写成一锅粥?这5种设计模式让你的项目“起死回生”
前端·javascript·设计模式
两年半的个人练习生^_^1 天前
每日一学:设计模式之原型模式
java·开发语言·设计模式·原型模式
九成宫2 天前
IT项目管理期末复习——Chapter 8 项目质量管理
笔记·项目管理·软件工程
九成宫2 天前
IT项目管理期末复习——Chapter 7 项目成本管理
笔记·项目管理·软件工程