关于设计模式的一点想法
最早读这本《设计模式:可复用面向对象软件的基础》是在大学的时候。读了一些片段,看到了讲文本编辑器的滚动条装饰,觉得有点意思,可以用来做图形界面。 记得有一天晚上上床睡觉后,和两位同寝室室友聊天。一位室友LL说,他为了找工作,把设计模式这本书看了五六遍,把所有设计模式都记住了。另一位室友LHT说,这设 ...
「全网最细 + 实战源码案例」设计模式——享元模式
核心思想 享元模式(Flyweight Pattern)是一种结构型设计模式,主要用于减少程序中大量对象的内存消耗。该模式通过共享相同的数据来有效减少内存的使用,适用于对象非常多且可以共享一部分状态的场景。 核心:将对象的内部状态和外部状态分离: 内部状态:存储在享元对象内部的、不会改变的状态, ...
多优先队列协程池爬虫及消息推送技术分析
作者:Naihe Github:https://github.com/239144498 项目需求:将某Discourse论坛最新消息进行多重过滤,判定信息的不同优先级并及时推送到手机。 项目难点: 论坛针对网络请求设置了IP和Token限流,频繁请求会触发429报错 针对不同信息流的分类,优先处理 ...
掌握设计模式--观察者模式
观察者模式(Observer Pattern) 观察者模式(Observer Pattern)是一种行为设计模式,它定义了对象间的一对多依赖关系,使得当一个对象状态发生改变时,所有依赖于它的对象都会自动收到通知并更新。 主要组成部分 主题(Subject):主题是被观察的对象,它维护一个观察者列表。 ...
掌握设计模式--责任链模式
责任链模式(Chain of Responsibility) 责任链模式(Chain of Responsibility)是一种行为型设计模式,旨在通过将请求沿着一系列处理者传递,形成一条处理链,直到请求被处理链上特定的结点处理为止。它允许多个对象有机会处理请求,而不需要明确指定哪个对象将处理该请求 ...
掌握设计模式--策略模式
策略模式(Strategy Pattern) 策略模式是一种行为设计模式,它定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,从而让算法的变化独立于使用它们的客户端代码。 策略模式的核心在于为算法的实现提供统一的接口,并通过动态选择具体实现来实现灵活性。 组成部分 Context(上下文类 ...
用远程代理模式轻松实现远程服务调用,打开编程新大门
通过远程代理来实现一个简易的远程过程调用实例。带你打开新的大门。 Socket 远程代理服务案例 基于 Socket 的远程服务,我们需要完成以下步骤: 服务端实现:创建一个远程服务,通过 Socket 接受客户端请求并提供计算服务。 客户端实现:客户端通过代理类访问远程计算服务,代理通过网络与服务 ...
掌握设计模式--代理模式
代理模式(Proxy Pattern) 代理模式(Proxy Pattern)是一种结构型设计模式,允许你通过代理对象来控制对其他对象的访问。代理模式的主要目的是通过代理对象来控制原对象的访问、延迟加载、权限控制等。 组成结构 Subject(主题接口):定义了真实对象和代理对象的共同接口。 Rea ...
掌握设计模式--享元模式
享元模式(Flyweight Pattern) 享元模式是一种结构型设计模式,它通过共享相同的对象来减少内存使用,从而提升性能。它适用于有大量相似对象的场景,通过共享相同的对象来避免创建大量重复对象。强调的是共享对象,不共享对象的行为。 核心思想 将对象分为 内部状态(Intrinsic State ...
掌握设计模式--外观模式
外观模式 外观模式 (Facade Pattern) ,又称为门面模式,是一种结构型设计模式,它通过为一组复杂的子系统提供一个简化的接口,使得客户端可以更容易地访问和使用这些子系统的功能。外观模式隐藏了系统的复杂性,对外提供了一个简单的接口,从而减少了外部系统与子系统之间的依赖关系,提高了系统的可维 ...
掌握设计模式--桥接模式
桥接设计模式(Bridge Pattern)是一种结构型设计模式,它通过将抽象部分与实现部分分离,使它们可以独立地变化。这种模式特别适合于需要在多个维度上扩展的场景,避免了类爆炸(类的数量随着组合需求呈指数级增长)的情况。 核心思想 抽象部分:定义对象的主要功能或者高层操作接口。 实现部分:实现抽象 ...
掌握设计模式--适配器模式
适配器模式(Adapter Pattern) 适配器模式是一种结构型设计模式,用于将一种接口转换为客户端期望的另一个接口,使得原本因接口不兼容而无法一起工作的类可以协同工作。适配器为中间者,连接着两个互不相容的接口,从而实现接口的适配。 核心思想:在不改变现有代码的情况下,将一个类的接口转换为客户端 ...
.NET 响应式编程 System.Reactive 系列文章(一):基础概念
在.NET中,响应式编程的核心库是System.Reactive,通常简称为Rx。本篇文章将介绍响应式编程的基础概念以及System.Reactive的核心组件,为后续深入学习奠定基础。 ...
与AI对话 --- 软件层级
Q: 我们来讨论一个具体的层级关系。假设有一个DisplayObject 层级。然后我们有一个层级,专门封装了一些方法,关于如何画displayobject。 这个层级是服务于display object ,可以看作是display object的extension 部分。 还有一个层级,关于如何从 ...
「全网最细 + 实战源码案例」设计模式——外观模式
概念 外观模式是一种结构型模式,为复杂的子系统提供一个统一的接口,使得子系统的功能对外界更加简单、易用。 与真实世界的类比 当你通过打电话给商店下达订单时,接线员就是该商店所有服务和部门的外观。 接线员为你提供了一个包含购物系统、支付网关、送货等服务的简单语言接口。 外观模式结构图 // 空调 pu ...
博问已解决问题»
- PortableApps等U盘使用的便携软件数据存储问题?
- 什么是云计算?它有哪些主要服务类型和应用?
- 使用阿里云计算巢部署 DeepSeek-R1 遇到问题
- DeepSeek 官方平台是否提供了生成 embedding 的 api 以及 token 费用是多少
- clickhouse pod 无法启动
- EPPlus 读取 xlsx 文件异常,提示 Bad signature (0x71CA947A) at position 0x010B6489
- 请教大神们一个halcon图像相似度的问题
- angular 项目 build 时报错:"TS2688: Cannot find type definition file for 'faker'"