当前位置: 首页 > news >正文

设计模式学习笔记

说了一万遍!学习要做笔记!

时间一长,就会忘了,后面再来学,又要从头学起

关键是重难点!!!当初学的时候就是因为攻克难点、寻找重点花费时间
不做笔记每次复习都要浪费时间在重难点上

每一次放弃的对自己的约定,都会蚕食你积攒下来的意志力!!!

1.简单工厂
就一个单独的工厂

2.工厂
和简单工厂的区别就是
会出现多个工厂

3.抽象工厂
为了解决 多个工厂生产出来的产品 可能会出现 不适配的问题

建造一些大厂。对于一座大厂,它将生产产品线上所有产品,并且这些产品是适配的

客户直接 选择选择一座大厂,由这座大厂生产所有产品

4.单例模式
饿汉 (迫切) (说白了一个全局变量)

static EagerSingleton* instance = new EagerSingleton();

懒汉 (事到临头再new)

static LazySingleton* getInstance() {if (instance == null) {instance = new LazySingleton();}return instance;

5.建造者模式

强调按步骤进行

Food food = new FoodBuilder().a().b().c().build();

6.原型模式

关键在 有个克隆接口 ,克隆自身得到一个新对象

门面模式(外观模式)
给出简单的接口,用来隐藏系统的复杂性

责任链模式
请求处理的顺序性
责任传递机制

桥梁模式(说白了就是不同维度 的 各个 值 都可以 相互组合
代码示例中是一个 n种颜色的画笔和m种形状,一个个组合实现的话得有n*m个类

桥梁模式将 画笔和形状的关系进行抽象,
在使用时就 自由搭配画笔和形状 (给具体形状类传一个具体画笔) ,这样就只需要实现n+m 个类

分离抽象和实现

组合模式
说的太好了 可以用来描述 树形结构

就是每一个节点,既可以是一个 单纯的节点 ,也可以是 一棵树

比较经典的 文件夹

装饰模式
示例代码中使用的是 饮料(红茶、绿茶) 和 小料(加芒果、加柠檬,—或者加珍珠哦)

被装饰后的饮料依然还是饮料(即 装饰者的父类 也要 继承 饮料),但是构造时一定要传入一个饮料(不论是装饰过的还是原始的)(只有小料的话就不叫饮料了)

http://www.lryc.cn/news/540771.html

相关文章:

  • 写论文技巧 :Word文档插入图片,实现自动对齐
  • VSCode - VSCode 切换自动换行
  • postman传query一个数组类型的参数,并且数组里面只有一个值的时候
  • 【智能客服】ChatGPT大模型话术优化落地方案
  • vue3 文件类型传Form Data数据格式给后端
  • 高考或者单招考试需要考物理这科目
  • 深入剖析 DeepSeek:张量计算范式全解析
  • VSCode集成deepseek使用介绍(Visual Studio Code)
  • 【保姆级教程】DeepSeek R1+RAG,基于开源三件套10分钟构建本地AI知识库
  • vue,vue3 keepalive没有效果,无法缓存页面include无效,keep-alive
  • Windows逆向工程入门之指针类型
  • PHP+Apache+MySQL安装(Windows)
  • 算法基础 -- 堆排序之C语言实现
  • Hutool - Extra:功能丰富的扩展模块
  • C++ 中的继承详解(上)
  • halcon三维点云数据处理(二十五)moments_object_model_3d
  • Mac M3/M4 本地部署Deepseek并集成vscode
  • 2024年职高单招或高考计算机类投档线
  • Unity Excel导表工具转Lua文件
  • SpringBoot项目集成MinIO
  • 第30篇 基于ARM A9处理器用C语言实现中断<六>
  • Flutter 中的单例模式
  • 8.python文件
  • 2025vue4.x全栈学习关键技术分析线路图
  • 革新之力:数字科技——重塑未来的超越想象之旅
  • 超级详细,知识图谱系统的理论详解+部署过程
  • 电路笔记 (信号): opa tips 放大器反馈电阻并联电容抑制高频噪声的详细推导(传递函数分析)
  • DeepSeek安装部署笔记(一)
  • 【JavaEE进阶】Spring MVC(4)-图书管理系统案例
  • Ubuntu部署ktransformers