[精通Python设计模式]笔记

文章目录

设计模式(python)

1、工厂模式

1.1、简单描述

每个工厂方法对外提供一致的API,新增工厂方法后,工厂的使用者无需更改代码。

1.2、应用场景

  1. 想要追踪对象的创建时
  2. 想要将对象的创建与使用解耦时
  3. 想要优化应用的性能和资源占用时

2、建造者模式

2.1、简单描述

分为指挥者、建造者:

  1. 指挥者:指挥建造者
  2. 建造者:分步骤逐步建造复杂类

2.2、应用场景:

  1. 创建一个复杂对象,对象由多个部分构成,且对象的创建要经过多个不同的步骤,,这些步骤也许还需遵从特定的顺序
  2. 想要将对象的构造与表现解耦
  3. 某个时间点创建对象,但在稍后的时间点再访问

3、原型模式

3.1、简单描述

基于现有的类进行深拷贝+部分属性的修改

3.2、应用场景

  1. 对一个副本进行更改而不会影响其他对象

4、适配器模式

4.1、简单描述

旧的API的输出不符合新任务场景,通过在旧API基础上再次包装,使得API能输出新任务场景需要的数据。类似USB转TypeC的转接线一样

4.2、应用场景

  1. 让一件产品在制造出来之后需要应对新需求之时还能工作
  2. 满足开放/封闭原则(对软件扩展是开放的,修改则是封闭的)
相关推荐
handler018 小时前
从零实现自动化构建:Linux Makefile 完全指南
linux·c++·笔记·学习·自动化
Hello_Embed9 小时前
嵌入式上位机开发入门(二十六):将 MQTT 测试程序加入 APP 任务
网络·笔记·网络协议·tcp/ip·嵌入式
不会编程的懒洋洋9 小时前
C# Task async/await CancellationToken
笔记·c#·线程·面向对象·task·同步异步
zhangrelay12 小时前
蓝桥云课五分钟-通关自动控制-octave
笔记·学习
_李小白14 小时前
【AI大模型学习笔记之平台篇】第六篇:安卓开发AI工具介绍(Android CLI、Android Skill和Android Knowledge Base)
人工智能·笔记·学习
YaBingSec14 小时前
玄机靶场:供应链安全-供应链应急-Part2 通关笔记
java·笔记·安全
qeen8714 小时前
【算法笔记】双指针及其经典例题解析
c++·笔记·算法·双指针
Lands15 小时前
推荐一下配合agent开发的工具
设计模式·agent
China_Yanhy16 小时前
生产笔记:AI 集群的极致成本与数据保命指南
人工智能·笔记
云起SAAS16 小时前
小智笔记APP源码 | 8大广告联盟聚合(穿山甲/优量汇/快手/百度) | 应用市场过审极速版 | uni-app全栈商用项目
笔记·uni-app·广告联盟·笔记app