设计模式的分类

设计模式的分类有很多种方法,本文主要介绍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形象地表示出了设计模式的分类。

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

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

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

相关推荐
疯狂打码的少年3 小时前
【软件工程】需求工程:需求获取与需求分析
数据库·笔记·软件工程·需求分析
春卷同学3 小时前
HarmonyOS掌上记账APP开发实践第3篇:接口与实现分离 — MoneyTrack Types.ets 与 Models.ets 的双层设计模式
设计模式
云纳星辰怀自在17 小时前
嵌入式系统栈溢出:从幽灵Bug到精准防控的全链路指南
软件工程·嵌入式软件·栈溢出·stack溢出
NG47720 小时前
【软件设计与体系结构】-策略设计模式
java·设计模式·软件工程
cspttty20 小时前
二本软件工程专业好就业吗?毕业后能做哪些岗位
大数据·软件工程
CaffeinePro21 小时前
SOLID五大设计原则:重构优雅代码与架构的底层规范
设计模式·架构
饮茶三千1 天前
电子保函模板编辑器实战二:HTML→FTL 编译转换的设计与实现
前端·vue.js·设计模式
Kel1 天前
Node.js 本质:从全脉络视角理解运行时原理
javascript·设计模式·node.js
码哥字节1 天前
11 万 Star 的 Spec Kit,90% 的工程师只用它解决了 10% 的问题
设计模式·vibe coding·github spec kit
我登哥MVP1 天前
走进 Gang of Four 设计模式:访问者模式
java·设计模式·访问者模式·原型模式