设计模式

杨充7 小时前
设计模式·开源·代码规范
11.DDD与战术建模2024 年 9 月,某中台项目「会员等级权益系统」迭代评审。一段对话——会议结束后,开发小组复盘。同一份需求里的「会员」出现了3 套含义:
杨充7 小时前
设计模式·开源·代码规范
12.综合实战图片框架本篇是「面向对象设计」系列第 12 篇 · 综合实战篇。 前 11 篇我们一砖一瓦地讲了 OOP 的内功,封装、抽象、接口、组合、SOLID、坏味道、重构、可测、DDD。 但真正考验功夫的从来不是单点技巧,而是用一整套思维去救活一个真实系统。 这一篇我们要做的事情很"野": 拿一段真实出过事故的图片加载屎山代码(V0),用前 11 篇的全部内功,把它一步步演进成一个媲美 Glide 的可扩展、可测试、可演进的框架(V5)。 每一次重构都对应一篇文章的核心思想,每一次演进都附前后对比与思考题。 读完这篇,你
芝士熊爱编程12 小时前
java·单例模式·设计模式
创建型模式-单例模式单例模式是一种创建型设计模式,它确保在jvm内存中,一个类的实例只有一个,并且对外提供一个可以访问它的静态方法。核心目的是做资源控制,如数据库连接池,全局配置类等,限制只有一个实例,避免资源浪费和导致资源冲突。
咖啡八杯14 小时前
设计模式·访问者模式
GoF设计模式——访问者模式本文是【GoF设计模式】系列第23篇假设一个文档系统里有段落、图片、表格三类元素,要导出 HTML 和 Markdown 两种格式。最直接的写法是把导出逻辑塞进每个元素类:
谢栋_16 小时前
java·设计模式·责任链模式
设计模式从入门到精通之(七)责任链模式在复杂系统中,请求往往需要经过多个步骤处理,比如用户登录验证、权限检查、数据处理等。如果每个步骤都硬编码在一起,代码会变得难以维护。那么,有没有一种方式可以将这些处理逻辑解耦,并灵活扩展呢?
葬送的代码人生1 天前
前端·设计模式·架构
别再让 AI 瞎写代码了!Vibe Coding 三步法教你写出靠谱代码很多人用 AI 写代码的体验是这样的:"帮我写一个 React 待办清单页面,支持新增、删除任务。"AI 秒回一大段代码,看着像模像样,一跑——报错。或者能跑,但代码乱成一团,想改都不知道从哪下手。
无风听海1 天前
java·算法·设计模式
Claude Agent Skills 的四种设计模式;从渐进式披露到最小权限Agent Skill 的本质,是一个包含指令、脚本与资源的文件夹,让 agent 能够更准确、更高效地完成某类专业工作。它最简的形态只是一个 SKILL.md,靠 YAML frontmatter 里的 name 和 description 被发现和触发。
富贵冼中求1 天前
设计模式·架构
从单向流到双向 RPC:Agent 通信协议的范式分叉与 ACP 协议实战拆解把一个长驻型 AI Agent 接入了自己的桌面应用,过程中发现当前 Agent 生态里存在两种根本不同的通信范式,而大多数文章只讲 Agent 的 Prompt 工程、Context 工程,几乎没人系统讲过传输层。这篇就来填这个坑。
zjun10012 天前
设计模式
C++:2.工厂模式工厂模式主要解决,同一类接口,不同厂家有不同实现这类问题。以业务集成相机sdk为例,相机常用到的功能有打开相机、读取流、关闭流、设置相机参数等。但不同厂家sdk实现方式不一样,如果不用工厂模式,那相同的业务代码,可能要写很多份。使用后,整体代码变得简洁,耦合性好。下面举例说明。
电子科技圈2 天前
tcp/ip·设计模式·架构·软件构建·代码规范·设计规范
先进封装、芯粒架构和3D集成——先进异构集成亟需兼具标准化与定制化能力的互联及总线IP解决方案作者:Mohith Haridoss,SmartDV Technologies全球销售总监“在摩尔定律逼近物理极限之际,无论是台积电的CoWoS、已广为使用的芯粒(Chiplet)、还是华为的‘韬定律’折叠逻辑,其核心都离不开异构芯粒或者电路单元间的互联和总线,其中的新协议和相关IP产品正引发全球半导体产业链的深度重构。”
触底反弹2 天前
人工智能·设计模式·面试
🤯 面试被问 AI Workflow 和 Agent 有啥区别?3 张图 + 2 段代码讲清楚!摘要:Workflow 和 Agent 到底有啥区别?为什么 Coze 工作流和 ReAct Agent 看起来都在"执行任务",本质却完全不同?本文从面试翻车经历出发,结合 Anthropic 官方定义、ReAct 框架、完整代码示例和实战选型指南,帮你彻底搞懂这对最容易混淆的 AI 概念。
杨充3 天前
设计模式·开源·代码规范
10.可测试性实战设计2024 年 11 月,某交易系统大版本上线。CI 全绿、覆盖率 94.7%,团队开庆功 PR 通过。周一上线,周二崩了。
杨充3 天前
设计模式·开源·代码规范
9.重构十二式的实战上一篇 08.反模式与坏味道大全 末尾留下了三道题:重构有一句广为流传的话:「重构是为了让代码更好理解,而不是为了让代码更短。」——Martin Fowler
杨充3 天前
设计模式·开源·全栈
6.设计原则的全景图上一篇 05.多用组合和少继承 末尾留下了三道题:三道题同时指向本篇的主题:如何从「可以这样写」走到「该这样写」,这正是 SOLID 的职责。
杨充3 天前
设计模式
2.面向对象的特性上一篇 01.面向对象设计思想 末尾留下了三道题:它们看似分别对应「字段访问」「类的扩展」「调用顺序」,但答案都同一个根,本篇的四大特性。
杨充3 天前
设计模式·开源·全栈
7.SOLID原则案例汇2023 年 4 月,某金融中台团队做 Code Review。一段 700 行的 RiskCheckProcessor 长出了三重 if 嵌套 + 9 个魔法字符串。会议室里 5 个工程师吵了 40 分钟:
杨充3 天前
设计模式·开源·代码规范
8.反模式与坏味道2024 年 6 月,新人 Wang 提交了一个 PR:「优化订单结算流程」。+832 行 / -612 行。Reviewer 是工作 8 年的老 Z。
杨充3 天前
设计模式
3.接口vs抽象类比较上一篇 02.面向对象的特性 末尾留下了三道题:本篇要回答的是中题和难题:三道题同时指向本篇的核心重点:抽象类与接口到底要怎么选?
咖啡八杯3 天前
java·设计模式·解释器模式·ast·文法
文法、BNF与AST本文是【GoF设计模式】系列第22篇的前置知识解释器模式是 GoF 23 种设计模式中公认比较难理解的一个。它的难不在代码本身,而在前置概念——文法和 AST(抽象语法树)。如果不先搞懂这两个概念,直接看解释器模式的代码会一头雾水。