设计模式

一木 之林13 小时前
c++·人工智能·设计模式
第 8 节 C++ 设计模式在 AI 推理 SDK 和 Agent 工具运行时中如何落地摘要:本节系统讲解 C++ 设计模式在 AI 推理 SDK 和 Agent 工具运行时中的落地实践。创建型模式(工厂、建造者、单例、原型)解决对象构造的灵活性与一致性;结构型模式(适配器、装饰器、代理、外观、桥接、组合、享元)解决多后端 API 统一与功能叠加;行为型模式(策略、观察者、责任链、模板方法、状态、命令、访问者、中介者)解决推理流程编排与工具调用链;RAII、Pimpl、类型擦除、CRTP 是 C++ 特有的工程基石。文中给出大量可编译 C++ 示例、面试追问速查表、模式选型决策流程图,并总结
Zane199416 小时前
设计模式
MVC 三层架构被打上反模式标签?一次账户扣款需求,讲清楚贫血模型和充血模型该怎么选「设计模式与范式」系列 Day04业务开发天天在写的 Controller-Service-DAO 三层架构,是绝大多数人入行第一天就学会的标准套路。但如果我告诉你,这套写法在很多人眼里是反模式(anti-pattern),是彻头彻尾的面向过程编程,你是不是要愣一下——这不是最正统的 Java Web 开发方式吗?这篇就用一个账户扣款的真实需求,把这件事的来龙去脉讲清楚:到底哪里"面向过程"了,充血模型和 DDD 又是怎么解决这个问题的。
geovindu1 天前
开发语言·设计模式·rust·建造者模式
rust:Builder Pattern输出:
小王师傅661 天前
设计模式
【设计模式】装饰模式(三):从装饰模式看 Java 与面向对象设计(原理篇)【设计模式】装饰模式(一)实战:从计费系统的“动态加功能“说起 【设计模式】装饰模式(二):认识装饰模式
Zane19942 天前
设计模式
从一次支付渠道扩展需求,看懂"多用组合少用继承"到底在说什么「设计模式与范式」系列 Day03Day02 打完了四大特性的地基,这篇不再逐个讲概念,而是用一个真实场景把接口、抽象类、组合、继承这几个知识点串起来:给电商系统加支付渠道。这是个几乎所有后端都会遇到的需求,也是"继承一开始很好用,后来突然绷不住"的典型案例。
geovindu2 天前
后端·设计模式·c#·.net·.netcore·条件变量模式·同步型模式
CSharp:Condition Variable Pattern本文围绕珠宝行业企业级全程业务流程的工程化实现展开,重点介绍如何基于 C# .NET 10 与条件变量模式(Condition Variable Pattern)构建一套可扩展、可观测、具备弹性容错能力的订单全流程流水线。文章将从业务建模、流水线引擎设计、弹性适配与日志体系四个维度逐步拆解,帮助读者理解复杂业务系统在并发与故障场景下的落地思路。
geovindu2 天前
sql·mysql·设计模式·数据库开发
sql: Data Modeling Patterns using mysql珠宝行业的数据链路长、业务形态复杂:从宝石原料采购、款式 BOM 设计、加工工单流转,到成品库存、经销商分销与门店销售,每一环都沉淀着大量结构化数据。然而,许多企业在建模时往往陷入两难——业务库要么过度冗余导致更新异常,要么过度范式化拖慢查询;数据仓库又缺乏从 OLTP 到 DW 的完整衔接,维度拉链、增量抽取、数据质量校验等环节常常靠手工拼凑,难以支撑规模化经营分析。本文面向数据库工程师与架构师,以 MySQL 9.0 为底座,从范式建模、反范式设计、SCD 缓慢变化维度、层次模型、多租户、事务与锁,到
sarasuki2 天前
人工智能·设计模式·agent
失败重试:Agent 中指数退避的正确姿势上一篇扒了工具调用,那是 Agent 的「手」。但手一伸出去,就有可能会碰到失败——模型 API 限流、过载、欠费、网络断。
Zane19942 天前
设计模式
为什么你写的 Java 代码"看着面向对象、实际是面向过程"?「设计模式与范式」系列 Day02用 Java 写代码 ≠ 写的是面向对象风格代码。Utils 满天飞、getter/setter 无脑生成、贫血模型——这些都是披着面向对象外皮的面向过程代码。
geovindu3 天前
数据库·sql·设计模式·sqlserver
sql: Data Modeling Patterns本文基于一套完整的 SQL Server 脚本,系统梳理珠宝行业数据建模中的核心模式,涵盖范式设计(1NF 到 5NF)、反范式与触发器同步、缓慢变化维度(SCD)、层次模型、多租户策略以及综合业务查询。全文以珠宝业务场景为主线,从原料、款式、加工、库存到经销商销售,帮助读者理解每种建模模式的适用场景与选型思路。
YHL4 天前
javascript·设计模式
🎯 JavaScript 单例模式(Singleton Pattern)—— 从理论到实战单例模式是 OOP(面向对象编程) 中最经典的设计模式之一,属于 GoF 23 种设计模式中的一种。💡 核心思想: 一个类在系统中只能被实例化一次,无论调用多少次,返回的都是同一个实例。
2401_868534784 天前
网络·设计模式
网络环境规划核心考点全梳理7.1 网络架构和主要技术7.1.1 信息网络系统一般体系框架模型★★★一个完整的信息网络系统由多个相互独立又关联的功能模块组成,可分为四大核心平台:•网络传输平台:负责数据的物理传输•服务平台:提供各类应用和业务服务•网络管理和维护平台:监控和管理整个网络•安全服务平台:保障网络和数据安全终端用户(企业、家庭、个人、物联网设备)通过各类接入方式连接到上述平台,实现信息交互。7.1.2 开放系统互连七层模型★★★★★OSI 模型将网络通信过程分为 7 个层级,自下而上各司其职,各层相对独立又相互协作。
feiyu_gao5 天前
设计模式·aigc·ai编程
Cocreation Framework:一套给所有人的 AI 协作思考系统我用 AI 写代码、做策划、写文档快两年了。有一个问题一直困扰我:为什么我脑子里想的是 A,AI 做出来的却是 B?
善良勤劳勇敢而又聪明的老杨6 天前
设计模式·ai编程
【AI编程系列】MCP 常用设计模式解读一个成熟 MCP 系统通常不是“把所有 REST API 原样暴露为工具”,而是分成四层:用户Host / Agent 应用
geovindu6 天前
java·开发语言·后端·设计模式·策略模式·行为模式
java: Strategy Pattern在复杂业务系统中,流程往往包含多个环节,且每个环节都可能发生变化。策略模式(Strategy Pattern)通过定义一组可互换的算法族,将「变化」封装起来,使业务逻辑更加清晰、易于扩展。本文以珠宝全业务流程为例,结合依赖注入(DI)容器、日志抽象、重试熔断等机制,演示如何用 Java 21 构建一个高并发、可维护的业务流程调度系统。
码匠许师傅6 天前
c++·设计模式·uml
【设计模式精讲】29.行为型模式总结与对比(Behavioral Patterns Summary)【摘要】:行为型模式常被压缩成「一堆回调技巧」,十一种模式背起来像十一道独立考题。其实按「各自要解决的问题」聚类,四个问题就装下了:一组对象怎么对话(观察者/中介者/责任链)、变化的行为装进哪里(策略/模板方法/状态)、过去怎么留住(命令/备忘录)、结构怎么加工(迭代器/访问者/解释器)。同组是近亲,结构最像、最易混淆,本文逐组细说区别与联系,重点辨析「通信三兄弟」;跨组模式几乎不会认错,却常串成流水线。再以横向对比表、决策树、组合案例、常见误判与评审清单收口。读完你能对着一段交互代码说出:问题属于哪一组
geovindu6 天前
开发语言·后端·观察者模式·设计模式·c#·.netcore·行为模式
CSharp: Observer Pattern在珠宝业务系统中,从原料采购、设计加工到质检、物流、财务、营销乃至人事培训,一条完整业务链路往往横跨多个部门。传统做法是各部门在流程节点上轮询或硬编码调用,导致模块之间高度耦合、扩展困难。观察者模式(Observer Pattern)通过「主题发布、观察者订阅」的方式,让业务阶段变更事件能够按需精准通知到对应部门,既降低了耦合,又提升了系统的可维护性与并发能力。本文以 C# .NET 10 为例,结合领域事件、依赖注入与重试熔断机制,完整演示观察者模式在珠宝全流程业务中的落地实践。
YHHLAI7 天前
设计模式
NestJS 后端开发实战:从设计模式到 CRUD 全栈本文基于一个 NestJS 学习项目,从工厂设计模式讲起,逐步深入到 NestJS 模块化架构和完整 CRUD API 的实现。适合前端开发者入门后端开发。
2401_868534787 天前
设计模式·需求分析
长远目标 Long-term Goal 老题沿用What goal & How long you’ve had this引出话题Alright, so...the goal that I’ve set for myself is to get into a top university in the world, like Oxford, Cambridge, or Harvard. I’ve had it ever since my first year in high school. I remember having this talk give
吃饱了得干活7 天前
后端·设计模式·架构
Java设计模式实战:一个支付模块的重构之旅,层层递进理解设计模式精髓设计模式不是背出来的,而是在解决实际问题的过程中自然浮现的。很多同学学设计模式时,往往陷入“每个模式都认识,但不知道什么时候用”的困境。