您现在的位置是:首页 >技术交流 >软考 软件设计师上午题设计模式概念类网站首页技术交流
软考 软件设计师上午题设计模式概念类
设计模式分类

 
 
创建型设计模式

简单工厂模式
不符合开闭原则,因此没有列入23类模式里
 对扩展开放对修改关闭
 
工厂方法模式
说穿了:系统开放一个接口(拓展开放)、不提供修改的接口(修改关闭),这是创建型下的工厂模式设计核心
 
 
 
抽象工厂
抽象工厂方法,一个工厂可以生产多个产品
 这个可以理解成 一个人买猪肉汤底的饺子,但店里有面和饺子,有猪肉汤底和牛肉汤底;汤底是系列,饺子和面是产品;先选系列再选产品
 
 
生成器模式

 
生成器:创建一个产品上有很多的部件 生成器就负责创建部件(抽象)。concreteBuilder生成部件() Director导演
 导演使用具体的生成器,生成器创建具体的产品,再把产品返回 。
 
 
原型模式
上午题没怎么考过
 

原型模式: 你本来有一个产品在这你给他复制一个
 同一作品的各比赛复用
 出现少,常作为干扰选项
单例模式
比如西游记里面取经路上用到各种交通工具,而白龙马只有一只,且一直都跟着
 
结构性设计模式

 考过的次数
适配器模式
理解: 比如你想把usb设备插入typec接口时不行,所以就用到了适配器转接
 
 
adapter=转接头
桥接模式

 
菱形左边时整体右边是部分

理解 中间有一个桥 把抽象跟实现分开,左边可以随意增加产品也不会影响到右边的颜色
 
组合模式

 
 
装饰器模式


外观模式(22年考过)

关键:外观外观,提供一致的外观界面
 理解:类似于一个网站里面有很多分页面子系统
 
享元模式
可以这样理解,有个很抠门的人带来一副五子棋,这副棋只有黑白各一颗棋子、一个用于记录的本本和棋盘,每下一次拿本本记录棋子的颜色和下的位置,通过本本的记录判断局势
 
 
细粒度 将一个对象进行划分,划分出大量的对象
黑子 白子例子
代理模式(适用性考的少)

关键词:控制对这个对象的访问
 理解:proxy是代理 subject你想买的房车 real是付钱。代理可以帮你省去手续时间
 

行为设计模 看重点

责任链模式 (实用性意图都要)

**学生发出请假需求 辅导员只能批假7天 院长15 校长30天 这三个人就是处理者 。如果辅导员批不了得会用链把这个请求转给对应的人 **

命令模式


解释器模式(没考过)

 
 
迭代器


中介者模式

每个人都需要跟其他对象进行通信,这样显得很紧俏,用终结者模式 接收消息他在分发给对应的人
 相当于让一个中转站帮忙传递消息
 
备忘录

解释:把状态保存下来 方便以后恢复
**备忘录模式 (memento)
 在不破坏封装性的前提下捕获一个对象的内部状态
 解释:把状态保存下来 方便以后恢复
 原发器(Originator)决定要不要备份。备忘录只能被原发器访问
 Caretaker 存储备份记录
 **
 
观察者模式

解释:粉丝对应博主。是一对多。博主更新动态 粉丝收到更新通知
 subiect对应博主,observer对应粉丝
 
状态模式

对象在内部状态改变时改变他的行为
 解释:贩卖机 内部状态:有货无货,从有货卖完了 到无货,补货后状态转移为有货

策略模式
定义一列算法 把他们封装起来 是他们相互替换
 

模板方法模式

**定义一个操作中得算法骨架,而将一些步骤延迟到子类
 解释:有很多子类 子类有很多重复的行为还有一些可能因为子类的不同而改变的操作。
 就像你去提交申请表格,通常都会有一份模板。只需要加入模板。张三可能获奖证书多点,李四可能留学经历多些。他们的表格就像是从表格模板继承的子类。
 **
 模板是固定不变的比如上课进教室,下课出教室
 
访问者模式(适用性做了解)
表示一个作用于某对象结构中的各元素得操作
 
 

表示一个作用于某对象结构中的各元素得操作
 解释“想象,一个电影院,有很多部电影,这些电影可以给很多个观众看,然后这些观众都能给电影评分。


 这就是访问者
45选a,题目说了由它的子类实现,那应该要选的是它的父类
f访问者模式:访问所有对象,并且可以在不改变原来类的情况下定义一些作用域这个类的新操作
            




U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结