设计模式的分类

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

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

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

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

相关推荐
长不大的杨瑞杰8 小时前
OpenCode v2 会话可靠性实战:Snapshots、Compaction、Instructions 与 Formatters
人工智能·安全·云计算·软件工程·devops
是2的10次方啊19 小时前
设计模式与生活⑦:你打的车,隔着一个平台
设计模式
Wang2012201320 小时前
93k-Sequencer-Controlled Utility Lines
集成测试
geovindu20 小时前
rust: Read-Write Lock Pattern
开发语言·后端·设计模式·rust·读写锁模式·同步型模式
Old Uncle Tom2 天前
LLM 替代 SAST?Claude Code 安全审查工具的设计取舍与工程启示
人工智能·安全·软件工程
地图小课堂2 天前
Bigemap Pro如何打开无人机航拍影像并套合配准(有坐标 geoTiff、ecw)
无人机·软件工程
工一木子2 天前
设计模式与生活⑤:天冷了,给电动车套件挡风被
设计模式
是2的10次方啊2 天前
设计模式与生活⑥:问题一个个砸过来,先写张便签
设计模式
长不大的杨瑞杰2 天前
OpenCode v2 多源上下文实战:Websearch、References、Attachments 与缓存预热
人工智能·安全·云计算·软件工程·devops
howard20052 天前
软件工程课程架构思维导图
软件工程·课程架构