23种设计模式简介

news2025/3/10 7:46:30

一、创建型(5种)

1.工厂方法

总店定义制作流程,分店各自实现特色披萨(北京店-烤鸭披萨,上海店-蟹粉披萨)
在这里插入图片描述

2.抽象工厂

套餐工厂(家庭装含大披萨+薯条,情侣装含双拼披萨+红酒)
在这里插入图片描述

3.建造者

定制披萨分步构造(选饼底→加料→选酱→烘烤时间)
在这里插入图片描述

4.原型

复制畅销款披萨配方(深克隆包含所有配料比例)

在这里插入图片描述

5.单例

全店唯一的烤箱温度控制器

在这里插入图片描述

二、结构型(7种)

6. 适配器

将方形插头转换为圆形接口(电压转换器)
在这里插入图片描述

7. 桥接

遥控器(抽象层)与不同电视品牌(实现层)解耦
在这里插入图片描述

9. 组合

组织架构树(CEO-部门经理-员工)
在这里插入图片描述

10. 装饰器

给咖啡动态加料(加奶泡3元,加焦糖2元)
在这里插入图片描述

11. 外观

智能家居一键模式(“回家模式”=开灯+空调+播放音乐)
在这里插入图片描述

12. 享元

棋盘游戏复用棋子对象(500个棋子只需2种颜色对象)
在这里插入图片描述

13. 代理

房产中介代管钥匙看房

在这里插入图片描述

三、行为型(11种)

14. 责任链

快递分拣系统(市级→区级→驿站)
在这里插入图片描述

16. 命令

餐厅点餐小票(支持撤销加菜操作)
在这里插入图片描述

17. 解释器

SQL语句解析器
在这里插入图片描述

18. 迭代器

地铁列车按站台顺序停靠
在这里插入图片描述

19. 中介者

机场塔台协调所有飞机起降
在这里插入图片描述

20. 备忘录

游戏存档/读档功能
在这里插入图片描述

21. 观察者

天气预报APP订阅通知
在这里插入图片描述

22. 状态

红绿灯自动切换(红灯→绿灯→黄灯循环)
在这里插入图片描述

23. 策略

导航APP多种路径算法(最短距离/避开收费/最快时间)
在这里插入图片描述

24. 模板方法

奶茶制作流程(煮茶→加料→封口)不可改步骤顺序
在这里插入图片描述

25. 访问者

超市收银台(不同商品用不同计价方式)
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2311808.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HTML前端手册

HTML前端手册 记录前端框架在使用过程中遇到的各种问题和解决方案,供后续快速进行手册翻阅使用 文章目录 HTML前端手册1-前端框架1-TypeScript框架2-CSS框架 2-前端Demo1-Html常用代码 2-知云接力3-Live2D平面动画 3-前端运维1-NPM版本管理 1-前端框架 1-TypeScrip…

利用 requestrepo 工具验证 XML外部实体注入漏洞

1. 前言 在数字化浪潮席卷的当下,网络安全的重要性愈发凸显。应用程序在便捷生活与工作的同时,也可能暗藏安全风险。XXE(XML外部实体)漏洞作为其中的典型代表,攻击者一旦利用它,便能窃取敏感信息、掌控服务…

引领变革!北京爱悦诗科技有限公司荣获“GAS消费电子科创奖-产品创新奖”!

在2025年“GAS消费电子科创奖”评选中,北京爱悦诗科技有限公司提交的“aigo爱国者GS06”,在技术创新性、设计创新性、工艺创新性、智能化创新性及原创性五大维度均获得评委的高度认可,荣获“产品创新奖”。 这一奖项不仅是对爱悦诗在消费电子…

纯html文件实现目录和文档关联

目录结构 效果图 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>项目结题报告</title><style lang"scss">::-webkit-scrollbar {width: 6px;height: 6px;}::-webkit-scro…

共绘智慧升级,看永洪科技助力由由集团起航智慧征途

在数字化洪流汹涌澎湃的当下&#xff0c;企业如何乘风破浪&#xff0c;把握转型升级的黄金机遇&#xff0c;已成为所有企业必须直面的时代命题。由由集团&#xff0c;作为房地产的领航者&#xff0c;始终以前瞻视野引领变革&#xff0c;坚决拥抱数字化浪潮&#xff0c;携手数字…

自学嵌入式第27天------TCP和UDP,URL爬虫

1. TCP和UDP区别 **TCP&#xff08;传输控制协议&#xff09;和UDP&#xff08;用户数据报协议&#xff09;**是两种主要的传输层协议&#xff0c;它们在数据传输方式上有显著区别&#xff1a; 连接性&#xff1a; TCP是面向连接的协议&#xff0c;通信前需通过三次握手建立连…

三维建模与视频融合(3D-Video Integration)技术初探。

三维建模与视频融合&#xff08;3D-Video Integration&#xff09;是一种将虚拟三维模型无缝嵌入实拍视频场景的技术&#xff0c;广泛应用于影视特效、增强现实&#xff08;AR&#xff09;、游戏开发、广告制作 、视频监控 等领域。 一、技术核心流程 三维建模与动画 使用工具…

分布式存储学习——HBase概述

1.1 HBase概述 1.1.1 理解大数据背景 1.1.2 HBase是什么 1.1.3 HBase与Hadoop的关系 1.1.4 HBase的核心功能模块 1.1.5 HBase的应用场景和经典案例 1.1.6 小结 本文参考于学校《HBase应用于开发》教材 1.1 HBase概述 本节将介绍大数据背景和HBase的基本概念&#xff0c…

LLM run

lmstudio lmstudio ollama ollama N 卡使用自带UI gpu加速推理 ,选择满足条件的&#xff0c; ds模型选择列表 https://ollama.com/library/deepseek-r1 a卡当前支持的显卡型号 I卡 gpu加速配置 2025.3 intel Official project optimization https://www.modelscope.cn/m…

【大模型基础_毛玉仁】2.2 大语言模型架构概览

【大模型基础_毛玉仁】2.2 大语言模型架构概览 2.2 大语言模型架构概览2.2.1 主流模型架构的类别1&#xff09;Encoder-only 架构2&#xff09;Encoder-Decoder 架构3&#xff09;Decoder-only 架构 2.2.2 模型架构的功能对比1&#xff09;注意力矩阵2&#xff09;适用任务 2.2…

pt-archiver删除数据库的数据表/各种报错类型

这篇帖子是前面文的一部分延申 mysqlimport导入一亿数据的csv文件/一行命令删除表-CSDN博客 如需转载&#xff0c;标记出处 目录 pt-archiver命令格式 如果执行后出现下面报错 1&#xff09;Cannot find an ascendable index in table at /usr/bin/pt-archiver line 3233. …

LLM 学习(一 序言)

文章目录 LLM 学习&#xff08;一 序言&#xff09;知识点1&#xff1a;“Embedding” 在人工智能领域&#xff1a;知识点2&#xff1a;Embedding 引入位置信息的原因知识点3&#xff1a;在 Transformer 的 Decoder 翻译第 i 个单词时进行 Mask 第 i1 个单词的操作 LLM 学习&am…

STM32-HAL库初始化时钟

使能和失能外设GPIOA 时钟信号初始化函数 HAL_RCC_OscConfig函数&#xff1a; HAL_StatusTypeDef是该函数的返回值类型,最顶上的那句话只是这个函数的原型 HAL_RCC_ClockConfig函数&#xff1a; 因为FLASH实际上只能支持24MHz的时钟信号所以如果用高于24MHz的信号输入则要用到等…

批量将 Word 拆分成多个文件

当一个 Word 文档太大的时候&#xff0c;我们通常会将一个大的 Word 文档拆分成多个小的 Word 文档&#xff0c;在 Office 中拆分 Word 文档是比较麻烦的&#xff0c;我们需要将 Word 文档的页面复制到另外一个 Word 文档中去&#xff0c;然后删除原 Word 文档中的内容。当然也…

【算法系列】桶排序算法介绍及实现

文章目录 桶排序算法介绍及实现桶排序的基本原理算法实现步骤Java代码实现性能优化结论 桶排序算法介绍及实现 桶排序的基本原理 桶排序&#xff08;Bucket Sort&#xff09;是一种基于分组的排序算法&#xff0c;其核心思想是将一组数据按某种 规则分配到多个桶中&#xff0…

13.数据结构(软考)

13.数据结构&#xff08;软考&#xff09; 13.1:线性表 13.1.1 顺序表 顺序存储方式:数组的内存是连续分配的并且是静态分配的&#xff0c;即在使用数组之前需要分配固定大小的空间。 时间复杂度&#xff1a; 读&#xff1a;O(1) 查询&#xff1a;1&#xff0c;(n1)/2&#x…

拉拉扯扯adfda

read -p "请输入一个成绩&#xff1a;" sorce if [ "$sorce" -ge 90 -a "$sorce" -le 100 ] thenecho A elif [ "$sorce" -ge 80 -a "$sorce" -lt 90 ] thenecho B elif [ "$sorce" -ge 70 -a "$sorce"…

【计算机网络】TCP

1.基本概念及报文格式 基本概念&#xff1a; TCP的中文全称为传输控制协议&#xff08;Transmission Control Protocol&#xff09;&#xff0c;是一种可靠的&#xff0c;面向连接的&#xff0c;基于字节流的传输层通信协议。 报文格式&#xff1a; 序号 &#xff1a;占32⽐…

关于tomcat使用中浏览器打开index.jsp后中文显示不正常是乱码,但英文正常的问题

如果是jsp文件就在首行加 “<% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8" %>” 如果是html文件 在head标签加入&#xff1a; <meta charset"UTF-8"> 以jsp为例子&#xff0c;我们…

pytest结合allure

Allure 一、文档二、指令三、装饰器3.1 allure.step装饰器3.2 allure.description装饰器3.3 allure.title装饰器3.4 allure.link、allure.issue 和 allure.testcase装饰器3.5 allure.epic、allure.feature 和 allure.story装饰器3.6 allure.severity装饰器 一、文档 allure文档…