23种设计模式总览

news/2025/2/11 18:49:33/

23 种经典设计模式共分为 3 种类型,分别是创建型、结构型和行为型。

创建型模式

它主要解决对象的创建问题,封装复杂的创建过程,解耦对象的创建代码和使用代码。

单例模式
工厂方法模式
抽象工厂模式
建造者模式
原型模式

结构型模式

主要总结了一些类或对象组合在一起的经典结构,这些经典的结构可以解决特定应用场景的问题

适配器模式
装饰器模式
代理模式
门面模式
桥接模式
组合模式
享元模式

行为型模式

主要解决的就是“类或对象之间的交互”问题

策略模式
模板方法模式
观察者模式
迭代器模式
责任链模式
命令模式
备忘录模式
状态模式
访问者模式
中介者模式
解释器模式


http://www.ppmy.cn/news/39596.html

相关文章

arm平台交叉编译rt-tests

如果要为ARM平台添加libnuma-dev库,需要在x86平台上进行交叉编译,生成ARM平台可用的库文件。具体步骤如下: 1. ARM平台的交叉编译工具链,例如arm-linux-gnueabihf,可以使用以下命令安装: sudo apt-get in…

西北乱跑娃 -- pymongo、docker与navicat

以下是创建MongoDB Docker容器并设置root密码、同时授予最高权限,以及连接Navicat的步骤: 拉取MongoDB镜像 使用以下命令拉取最新的MongoDB镜像: docker pull mongo创建MongoDB容器 使用以下命令创建MongoDB容器: docker run -…

python学习笔记1

从今天开始学习py,补下以前的技术债。。用的链接是: Python OOPs Concepts - GeeksforGeeks init指的是对于object初始化时做的工作。不是其他的!!是class的构造者,用于class attribute的初始化赋值 Class method …

怎么提高图片分辨率dpi?电脑图片怎么修改分辨率?

网络平台上找到适用的图片素材,使用时却发现图片分辨率偏低,会影响到图片效果,这时候我们可以采取提高图片分辨率的方式来解决问题,那么如何改图片分辨率(https://www.yasuotu.com/dpi)呢?下面告…

从零开始的嵌入式Linux生活(一) 背景介绍

文章目录前言本系列文章的主要思想:本系列文章包括:一、什么是嵌入式开发二.嵌入式开发 - 由便宜到贵三.嵌入式开发的例子一个假设:简简单单的写点代码越来越过分 - RTOS系统融资成功 - 嵌入式Linux系统老板飘了 - 安卓系统前言 近年来&…

从零开始实现一个C++高性能服务器框架----定时器模块

此项目是根据sylar框架实现,是从零开始重写sylar,也是对sylar丰富与完善 项目地址:https://gitee.com/lzhiqiang1999/server-framework 简介 项目介绍:实现了一个基于协程的服务器框架,支持多线程、多协程协同调度&am…

【C语言】关于我回头学的那些输入输出等(四)

前言 我的第一门语言就是C,但是学艺不精,中途跑去学了C#和Java后,感觉到了C的重要性,毕竟是最接近底层的语言,又跑回来学C。 毕竟前两门的控制语句,变量什么的都是类似的,回到C后只需要学习一…

腾讯云CVM云服务器评测:标准型S5、S6

一、腾讯云CVM云服务器评测:标准型S5、S6 腾讯云服务器CVM标准型S5是次新一代云服务器规格,标准型S6是最新一代的云服务器,S6实例的CPU处理器主频性能要高于S5实例,同CPU内存配置下的标准型S6实例要比S5实例性能更好一些&#xf…