日常知识点之遗留问题梳理(被问到用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:行为型 访问者模式(限制用户权限)

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

相关推荐
想学后端的前端工程师10 小时前
【Java设计模式实战应用指南:23种设计模式详解】
java·开发语言·设计模式
Revol_C10 小时前
开箱即用!轻量级轮询方案,支持同步获取轮询结果!
前端·javascript·设计模式
聪明努力的积极向上13 小时前
【设计】分批查询数据通用方法(基于接口 + 泛型 + 定点复制)
开发语言·设计模式·c#
long31614 小时前
类与对象 | 低级别设计 (LLD)
java·spring boot·学习·程序人生·spring·设计模式·学习方法
郝学胜-神的一滴15 小时前
Linux 下循环创建多线程:深入解析与实践指南
linux·服务器·c++·程序人生·算法·设计模式
syt_101316 小时前
设计模式之-组合模式
设计模式·组合模式
天下一般16 小时前
go语言设计模式<一>模板方法
开发语言·设计模式·golang
syt_101316 小时前
设计模式之-命令模式
设计模式·命令模式
有一个好名字16 小时前
设计模式-工厂方法模式
java·设计模式·工厂方法模式
阿波罗尼亚18 小时前
Head First设计模式(十三) 设计原则 现实世界中的模式
设计模式