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

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

相关推荐
ZHE|张恒1 天前
设计模式(十二)代理模式 — 用代理控制访问,实现延迟加载、权限控制等功能
设计模式·代理模式
SakuraOnTheWay1 天前
《深入设计模式》学习(1)—— 深入理解OOP中的6种对象关系
设计模式
q***71851 天前
Java进阶-SpringCloud设计模式-工厂模式的设计与详解
java·spring cloud·设计模式
白衣鸽子1 天前
告别参数地狱:业务代码中自定义Context的最佳实践
后端·设计模式·代码规范
帅中的小灰灰2 天前
C++编程建造器设计模式
java·c++·设计模式
ZHE|张恒2 天前
设计模式(十)外观模式 — 提供统一入口,简化复杂系统的使用
设计模式·外观模式
howcode2 天前
女友去玩,竟带回一道 “虐哭程序员” 的难题
后端·设计模式·程序员
apigfly3 天前
深入Android系统(十三)Android的窗口系统
android·设计模式·源码
y***54883 天前
Java设计模式之观察者模式
观察者模式·设计模式
明洞日记3 天前
【设计模式手册010】组合模式 - 树形结构的优雅处理
java·设计模式·组合模式