摘要: 本文是【GoF设计模式】系列第13篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要观察者模式? 假设在做一个气象监测系统,一个气象站(主题)负责采集温度、湿度、气压,多个展示面板(观察者)需要实时展示这些数据——一块在当前页面显示实时数值,一块画历史曲线图,还有一块做预警提示。 最直觉的写法是 阅读全文
posted @ 2026-06-18 23:00 咖啡八杯 阅读(5) 评论(0) 推荐(0)
摘要: 本文是【GoF设计模式】系列第12篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要享元模式? 假设要做一个文字处理软件,一篇 10 万字的文档,每个字符都有字体、字号、颜色等格式属性。如果每个字符都独立存储一份格式对象,就要创建 10 万个格式对象——其中大量对象的属性完全相同(比如正文都是" 阅读全文
posted @ 2026-06-16 23:02 咖啡八杯 阅读(9) 评论(0) 推荐(0)
摘要: 本文是【GoF设计模式】系列第11篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要组合模式? 假设在做一个文件管理系统,需要统计某个文件夹的总大小。文件夹里有文件,也有子文件夹,子文件夹里还有文件和文件夹——这是一棵递归的树。 如果文件和文件夹是两个完全不同的类,代码会变成这样: if (no 阅读全文
posted @ 2026-06-11 23:24 咖啡八杯 阅读(8) 评论(0) 推荐(0)
摘要: 本文是【GoF设计模式】系列第10篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要桥接模式? 假设要做一个图形编辑器,有圆形、矩形、三角形三种图形,每种图形又要支持红色、蓝色、黄色三种颜色。用继承来实现,就要写 RedCircle、BlueCircle、RedRectangle、BlueRec 阅读全文
posted @ 2026-06-09 22:42 咖啡八杯 阅读(18) 评论(0) 推荐(0)
摘要: 本文是【GoF设计模式】系列第9篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要外观模式? 开发中经常遇到这种情况:一个业务操作需要依次调用多个子系统。比如"启动系统"要先初始化数据库连接、加载配置文件、启动缓存服务、注册定时任务——每个子系统都有自己的接口和调用顺序,漏掉一步或顺序错误都会导 阅读全文
posted @ 2026-06-04 22:02 咖啡八杯 阅读(9) 评论(1) 推荐(0)
摘要: 本文是【GoF设计模式】系列第8篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要装饰模式? 假设经营一家咖啡店,有基础咖啡和浓缩咖啡两种基底。顾客可以加牛奶、加糖、加珍珠……如果用继承来实现每一种组合,会得到 MilkCoffee、SugarCoffee、MilkSugarCoffee、Pea 阅读全文
posted @ 2026-06-02 23:10 咖啡八杯 阅读(13) 评论(0) 推荐(0)
摘要: 本文是【GoF设计模式】系列第7篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要代理模式? 有时候我们不能或不想直接访问某个对象。比如对象创建开销很大需要延迟加载,或者需要在访问前做权限检查,或者需要记录访问日志。直接在业务代码中掺杂这些逻辑会让代码臃肿且难以维护。 代理模式通过引入一个中间层 阅读全文
posted @ 2026-05-28 22:00 咖啡八杯 阅读(111) 评论(0) 推荐(1)
摘要: 本文是【GoF设计模式】系列第6篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要适配器模式? 写业务代码时经常碰到这种情况:项目里已经定义好了一个接口 PaymentGateway,所有支付都走它的 pay(orderId, amount) 方法;今天产品说要接入微信支付,打开 SDK 一看— 阅读全文
posted @ 2026-05-26 22:48 咖啡八杯 阅读(15) 评论(0) 推荐(0)
摘要: 最近老是收到微信平台的通知信息,告知“原微信人脸核身接口将于2026年6月30日停止服务,逾期未切换将无法使用人脸核身功能。”,看了一下官网的文档,2.0的使用变得更复杂了,所以整理了一下需要使用到的接口和流程,文中代码仅展示核心逻辑和框架,需根据实际项目调整。 概览 2.0 接口共需要使用以下四个 阅读全文
posted @ 2026-05-24 12:40 咖啡八杯 阅读(74) 评论(0) 推荐(0)
摘要: 本文是【GoF设计模式】系列第5篇,更多内容欢迎关注公众号:咖啡八杯 前言 为什么需要原型模式? 有些场景下,创建一个对象不是简单的 new 就能搞定的——可能要查数据库、调接口、做复杂计算,初始化过程很重。更麻烦的是,有时需要创建大量相似对象,每个只有细微差别: // 场景:创建一个游戏角色,和已 阅读全文
posted @ 2026-05-19 22:31 咖啡八杯 阅读(12) 评论(0) 推荐(0)