日常知识点之遗留问题梳理(被问到用uml画设计模式)

好多年不接触uml了,有一天面试,让用uml画出设计模式,

已经对uml的概念很模糊,隐约记得就是用例图,类图之类的,后面确定后,就是类图,用例图,时序图,都属于uml,按需画图。

结合自己以前整理过23中设计模式 以及参考:23种设计模式------UML类图+简要分析+例题_uml设计模式-CSDN博客

简单潦草做思路汇总,个人汇总。

1:创建型 单例模式(唯一实例)

2:创建型 简单工厂/工厂方法模式(函数参数或子类 创建不同类)

2.1 根据类型不同,创建不同的产品。

2.2:工厂的子类,创建不同的产品。

3:创建型 抽象工厂模式(超级工厂 工厂子类支持多种产品)

4:创建型 建造者/生成器模式(建房,子类建造不同的风格)

每个builder对象内部实际上创建了一个house,并有接口返回对象

结合下面的模板方法模式

5:创建型 原型模式(支持拷贝自身)

6:结构型 适配器模式(中间类 适配两边差异)

220v电压和不同电压的适配支持

7:结构型 桥接模式(抽象和实现分开 然后组合) 替换继承

这里也可以直接在pen中嗲用color 直接组合

8:结构型 组合模式(文件夹结构 部门层级 一组对象当单一对象)

9:结构型 装饰器模式(优化继承深度 扩展目标类功能)

10:结构型 外观模式(中间类,管理流程 如加密流程)

调用多个不同类的不同方法,组合一起

11:结构型 享元模式(重复用对象 对象池 下棋)

12:结构型 代理模式 (代理类 控制真实对象的访问)

13:行为型 解释器模式(语法解析器)

14:行为型 模板方法模式(基类提供接口 实现延迟给子类 建房)

15:行为型 责任链/过滤器模式

16:行为型 命令模式(万能遥控 )

命令类的子类是真正的实现,调用类直接通过实际子类调用到具体的指令。

可以和具体的字符(指令)进行关联优化

执行者是真正的业务处理,命令类调用执行者类中的方法。

17:行为型 迭代器模式(相同类型遍历 电视节目换台)

迭代器针对的是容器 特定顺序的容器

18:行为型 中介模式(聊天室 关联了所有人)

19:行为型 备忘录模式(目标类的临时存储和恢复)

20:行为型 观察者模式(发布/订阅)

21:行为型 状态模式(state子类真正状态对应执行)

如何管理状态比较灵活

22:行为型 策略模式(选不同的子类方案)

23:行为型 访问者模式(限制用户权限)

拆分目标类的功能,访问者根据权限不同,只能有部分权限

相关推荐
石一峰6995 小时前
C 语言函数设计模式实战经验
c语言·开发语言·设计模式
qq_297574677 小时前
设计模式系列文章(基础篇第22篇):访问者模式——分离数据结构与操作,实现灵活扩展
数据结构·设计模式·访问者模式
刀法如飞14 小时前
领域驱动 vs 本体驱动:DDD 代码建模与 Ontology 语义建模的对比分析
设计模式·架构设计·领域驱动
我爱cope1 天前
【Agent智能体26 | 多智能体-多智能体工作流】
人工智能·设计模式·语言模型·职场和发展
咖啡八杯1 天前
【无标题】
java·后端·设计模式
折哥的程序人生 · 物流技术专研1 天前
Java 23 种设计模式:从踩坑到精通 | 适配器模式 —— 让不兼容的接口也能一起工作
java·设计模式·面试·适配器模式·单一职责原则
布朗克1681 天前
33 设计模式精讲
java·单例模式·设计模式
geovindu1 天前
python: Generators Pattern
开发语言·python·设计模式·生成器模式
雨浓YN2 天前
基于设计模式的Winform软件框架-01Xml\Log\Ini日志(单例模式+生产者消费者模式)
单例模式·设计模式