第22章:设计模式应用——让AI理解需求并推荐适合的设计模式

本章你将收获

  • 如何用自然语言描述业务场景,让AI推荐合适的设计模式
  • 工厂模式、策略模式、观察者模式的AI生成完整代码示例
  • 用AI将“面条代码”重构为设计模式的实战案例
  • 设计模式选择决策表(什么场景用什么模式)
  • 我如何用AI把一个支付模块从满屏if-else改造为策略模式

22.1 一次让设计模式“活了”的经历

以前学设计模式,总感觉是纸上谈兵:工厂模式、策略模式、观察者模式……背得滚瓜烂熟,但一到实际项目,还是忍不住写if-else。直到有一次我接了一个支付模块的需求:支持微信支付、支付宝、银行卡支付,每种支付的计算方式、回调处理都不一样。我写了一坨if-else,把自己都绕晕了。

我尝试让AI帮我改造:“有多个支付方式,每种方式的处理逻辑不同,请用策略模式重构。”AI几秒钟就生成了清晰的策略接口、各个支付策略类、以及上下文类。我惊呆了——原来设计模式可以这么“丝滑”地落地。

从那以后,遇到复杂业务逻辑,我都会先让AI推荐设计模式,再让它生成代码。这一章,我会分享如何用AI“按需”应用设计模式,而不是为了模式而模式。


22.2 设计模式选择的AI决策表

在问AI之前,你可以先根据问题特征快速定位可能适合的设计模式。下面这张表是我自己总结的。

问题特征
Dify实战:从零构建企业级AI应用,50+场景全解析 在AI应用开发领域,你是否曾面临这样的困境:面对复杂的业务逻辑,需要串联多个大模型调用、知识库检索和外部API,却不得不编写大量胶水代码,调试过程繁琐且难以维护?或者,当你想快速验证一个AI创意时,却被繁琐的部署和集成流程劝退?如果你正在寻找一个能一站式解决AI应用从构思、开发到部署全流程的平台,那么Dify或许就是你期待已久的答案。 Dify作为一个开源的AI应用开发平台,正以其直观的可视化工作流、强大的RAG引擎和灵活的模型集成能力,成为众多开发者和企业构建生产级AI应用的首选工具。它让开发者能够像搭积 阅读详情

相关推荐

AI工具实战指南:提升职场生产力的关键技术

人工智能工具在现代职场中已成为提升效率的核心技术。从原理上看,AI通过机器学习和自然语言处理实现自动化任务处理,其技术价值体现在大幅降低重复劳动时间成本。典型应用场景包括文本处理(如合同生成)、编程辅助(代码重构)和视觉创作(电商设计)。以ChatGPT、GitHub Copilot等工具为代表的AI解决方案,配合Spring AI等企业级框架,能实现审批流程从4小时缩短至15分钟的突破。在实际使用中需注意内容安全校验和模型幻觉应对,建议结合业务需求建立AI工具链,并通过持续学习保持技术竞争力。

weixin_34387468的博客 439

Fireworks AI:无服务器AI推理平台的技术架构与应用实践

AI推理作为人工智能应用的核心环节,其性能直接影响模型部署效果。无服务器架构通过抽象底层基础设施,让开发者专注于业务逻辑实现。Fireworks AI采用优化的推理引擎和智能路由技术,显著降低模型推理延迟,支持主流开源模型的无缝接入。在工程实践中,该平台提供兼容OpenAI的API接口,简化了从传统方案迁移的复杂度。通过智能负载均衡和自动扩缩容机制,Fireworks AI特别适用于需要快速验证的AI应用场景,为开发者提供了高性能、低成本的推理服务解决方案。

weixin_33805992的博客 335

AI编程实战:智谱ZCode与GLM模型在VSCode与CLI中的集成与应用

AI代码生成是当前提升开发效率的核心技术之一,其原理基于经过海量代码训练的大语言模型,能够理解开发者意图并生成符合语法的代码片段。这项技术的核心价值在于显著降低重复编码的认知负荷,使开发者能更专注于架构设计和复杂逻辑。在工程实践中,AI编程助手已广泛应用于快速原型构建、代码解释、错误排查和生成样板代码等场景。本文聚焦于智谱AI的ZCode工具与GLM编程计划,详细解析如何通过VSCode插件集成与命令行工具(CLI)两种主流方式,将GLM大模型的能力无缝融入开发工作流,并提供了从环境配置到实际项目构建的完整

weixin_33991418的博客 420

GitHub AI/Agent/Skills热门项目实战:Spring AI、Hermes与Superpower Skills解析

在AI与Agent技术飞速发展的今天,每天都有大量优秀的开源项目在GitHub上涌现。对于开发者而言,如何在信息洪流中高效地发现、筛选并理解那些真正有价值、有潜力的项目,成为了一项重要的技能。本文旨在为你提供一份精选的“每日GitHub AI/Agent/Skills热门项目速览”,我们将聚焦于2024年6月30日前后社区关注度较高的几个项目,不仅介绍它们是什么,更会深入分析其核心设计、应用场景,并提供快速上手的实战指南。无论你是希望将AI能力集成到现有系统的工程师,还是对构建自主智能体(Agent)感兴趣

weixin_34008784的博客 519

重构-改善既有代码的设计 pdf

重构-改善既有代码的设计 pdf

qq_43679402的博客 5199

AI代码生成:从大语言模型到开发工作流的全面重塑

大语言模型通过在海量代码语料上进行训练,掌握了编程语法、设计模式和最佳实践,其核心原理是基于深度学习的序列预测。这项技术的核心价值在于将自然语言意图直接转化为可执行代码,从而引发软件开发领域的效率革命。在应用场景上,它已深度融入日常开发工作流,从代码补全、函数生成到复杂重构和调试支持。特别是在提示工程和代码审查环节,开发者需要从“怎么写”转向精准定义需求,并聚焦于逻辑正确性、安全性和架构合理性等深层问题。随着AI编程工具的普及,软件工程师的角色正从代码编写者向问题定义者、架构设计者和质量守护者演进,人机协作

weixin_33850890的博客 527

从零构建企业级AI智能体:基于LangChain的Agent应用开发实战

大语言模型(LLM)作为人工智能的核心技术,通过其强大的自然语言理解和生成能力,正在重塑人机交互方式。其工作原理基于Transformer架构,通过注意力机制处理序列数据,实现上下文感知的智能响应。这一技术价值在于将静态的知识库转化为动态的任务执行引擎,从而在智能客服、自动化报告生成、数据分析等复杂业务场景中实现自主决策与执行。Agent(智能体)应用开发正是这一趋势的集中体现,它通过集成规划、工具调用和记忆等模块,使AI能够像虚拟员工一样完成端到端的任务流程。本文聚焦于使用LangChain框架进行企业级

weixin_34218579的博客 370

2026年AI编程助手深度对比:GitHub Copilot与Claude Code实测指南

如果你正在纠结该为哪个AI编程助手付费——是选择老牌的GitHub Copilot,还是新秀Claude Code,这篇文章就是为你准备的。 2026年,AI编程助手已经不再是简单的代码补全工具,而是逐渐演变为能够理解复杂上下文、参与系统设计的智能伙伴。但面对市场上众多的选择,很多开发者陷入了"选择困难症":价格不菲的订阅费用,到底应该投资给谁? 经过深度实测对比,我的结论很明确: GitHub Copilot更适合追求稳定性和广泛语言支持的团队开发者,而Claude Code在复杂逻辑理解和代码质量方面表

weixin_34178244的博客 2359

Mini Claude Code:手写300行Python理解AI Agent核心执行逻辑

AI Agent并非黑箱,其本质是状态驱动的结构化决策系统。本文从基础概念切入,解析Agent如何通过意图解析、工具调用、结果反馈形成闭环执行链路;深入原理层面,揭示State-Action-Observation状态机、Prompt工程驱动的Planner设计、契约化Tool Executor等关键技术组件;强调其在本地开发提效中的真实技术价值——尤其适配DeepSeek等开源模型接入VS Code等IDE场景;最终落脚于可调试、可单步跟踪的轻量实现范式,为开发者提供理解并落地AI Agent的最小可行切

weixin_30475039的博客 292

基于Codex与OpenClaw框架构建AI智能体:从环境搭建到Three.js应用集成实战

AI智能体作为能够感知环境、自主决策并执行动作的自治程序,其核心原理在于通过大语言模型(LLM)驱动,结合工具调用与工作流编排实现复杂任务自动化。在工程实践中,利用LangChain等框架构建智能体工作流,可实现从自然语言理解到具体应用操作的技术闭环。通过模块化技能设计,如集成OpenClaw的预置能力,智能体能够快速获得天气查询、信息检索等实用功能。在应用场景上,智能体可通过WebSocket通信机制与前端应用(如Three.js构建的3D场景)交互,实现“语言指令控制可视化界面”的融合体验。这种技术架构

weixin_33912638的博客 308

2026免费AI IDE实战指南:Trae、Cursor、Cline核心差异与选型逻辑

AI编程IDE已从代码补全工具演进为理解需求、调试定位、安全加固、部署验证的全链路开发协作者。其技术本质是将大语言模型深度集成至编辑器内核,依托代码语义解析(如Tree-Sitter)、项目级上下文索引与实时安全推理,实现对开发者思维节奏的动态适配。技术价值体现在显著提升开发吞吐量、降低认知负荷、前置拦截生产风险。典型应用场景覆盖嵌入式固件开发、前端组件逆向工程、金融级API安全重构等。本文聚焦2026年三款主流免费AI IDE——Trae(强中文语义理解与硬件协同)、Cursor(VS Code原生改造与

weixin_33695082的博客 353

Orca AI编排器:并行调度多AI代理,提升编程效率与方案择优

Orca 是一个由 stablyai 开源的 AI 编排器,它解决了一个非常实际的问题:当你面对多个 AI 编程助手时,如何高效地管理和比较它们的工作。它的核心思路不是让你在多个 IDE 或终端窗口之间来回切换,而是让你在一个统一的界面里,将同一个编程任务(Prompt)同时分发给多个 AI 代理(Agent),让它们并行工作,最后你可以直观地对比结果,并选择最优解进行合并。 这个项目之所以能火,是因为它精准地击中了开发者在 AI 辅助编程中的痛点——选择困难。Claude Code、Cursor、GitH

weixin_34332905的博客 345

2025生产级智能体四大设计模式:从ReAct到Reflexion的工程落地

智能体(Agent)作为大模型应用的核心范式,其本质是将LLM嵌入可控、可观测、可审计的工程化执行流程。理解Agentic Design Patterns,需回归基础:它并非抽象算法,而是任务分解、状态追踪与失败收敛三位一体的系统设计方法论。在SLA驱动的生产环境中,Tool-Calling保障确定性,ReAct引入结构化推理闭环,Plan-and-Execute实现多步依赖调度,Reflexion支撑长周期自我优化——这四大模式构成从单点工具调用到复杂业务决策的完整能力阶梯。本文聚焦真实压测数据、错误码规

weixin_30247781的博客 414

AI Agent Skill开发实战:从概念到实现,打造智能体核心能力

在人工智能领域,大语言模型(LLM)虽然具备强大的知识理解和生成能力,但其核心局限在于无法直接操作外部系统或执行具体任务。为了解决这一限制,AI Agent应运而生,它通过集成特定功能模块来扩展能力边界。这些功能模块通常被称为Skill(技能),其核心原理是将外部工具或API封装成可被Agent调用的标准化接口,实现从“知道”到“行动”的跨越。从技术价值看,Skill不仅突破了LLM在实时信息获取、复杂计算和软硬件控制等方面的限制,更实现了任务自动化和模块化开发,显著提升了系统的可靠性与可维护性。在应用场景

289

Java大模型开发实战:Spring AI与LangChain4j技术全景指南

大模型正从概念落地为工程化应用,Java后端开发者需要一套完整的工具链来构建AI服务。Spring AI作为统一抽象层,屏蔽了底层模型差异,让开发者可以用类似Spring Boot的方式接入OpenAI、通义千问等大模型;而LangChain4j则复刻了LangChain的设计模式,为Java生态补齐了Chain、Agent、Tool等核心能力。两者共同构成了Java领域的大模型应用开发底座,配合Agent编排与Function Calling技术,模型不再仅是对话工具,而是能自动执行任务、调用工具的智能体

weixin_34280237的博客 433

轻量级语义推荐系统:小团队可落地的内容分发方案

内容推荐系统是提升用户停留时长与内容消费深度的核心技术能力,其本质是通过语义匹配理解用户意图与文档内涵,在稀疏行为数据下突破协同过滤局限。关键技术原理包括基于Sentence-BERT的轻量向量化、规则加权与MMR多样性重排的混合排序架构,兼顾可解释性、可控性与工程可行性。该方案无需GPU或大模型API,支持冷启动干预、实时策略调控与前端无感集成,广泛适用于博客系统、知识库、企业内网及在线课程等中小规模内容平台,尤其适合关注CTR优化与用户画像构建的技术团队快速验证和迭代。

cumian9828的博客 462

Lovart:AI设计智能体如何重构品牌视觉工作流

AI设计智能体是近年来兴起的关键技术范式,指具备意图理解、参考聚合、系统生成与可编辑输出能力的多阶段协同模型。其核心原理在于将传统单点图像生成升级为端到端的设计决策链,通过NLP语义解析、行业知识图谱调用和分层资产输出,实现品牌视觉的一致性交付。该技术显著提升中小团队在电商运营、VI构建与内容创作等场景下的生产效率,尤其适配中文语境下的真实传播需求。Lovart作为国内率先落地的AI设计智能体代表,依托本地化节点、中文语义增强与合规过滤机制,让‘需求即设计’成为可稳定复用的工程实践。

weixin_34380948的博客 447

测试 Wi-Fi、蓝牙性能

前几天去原厂测试了 Wi-Fi 和蓝牙的性能,现在把了解到的知识总结一下 RF通路新理解 RF通路一般分为两部分:芯片端、天线端 芯片端 芯片端包括芯片+芯片出来的RF匹配电路,是来调芯片的阻抗匹配的。 天线端 天线前一般也会有一段天线匹配电路,是留给天线调天线的阻抗匹配的。 调试的时候是两部分分开调试的,下面调试的就是芯片端。 测试“阻抗匹配”用网络分析仪看史密斯圆图 测试...

撒哈拉的初学者的博客 1万+

IEEE PHM 2012轴承数据实战:用LSTM预测剩余寿命的完整流程与调参心得

本文详细解析了如何利用IEEE PHM 2012轴承数据集和LSTM模型进行轴承剩余寿命预测。从数据预处理、特征工程到LSTM模型架构设计和调参技巧,提供了完整的实战流程。特别分享了FEMTO-ST数据集的处理方法、RUL标签构建策略以及提升预测精度的关键技巧,帮助工程师实现更准确的预测性维护。

weixin_31100517的博客 367

高压脉冲发生器的各种电路图

高压脉冲发生器的各种电路图

qq_65102825的博客 5897

关于42步进电机驱动——基于STM32 HAL库实现

我找了好多资料,好多关于42步进电机的都是文档,这么文档都需要积分,需要积分就算了内容还非常差,浪费时间和电脑的内存。关于大部分是基于Arduino和51去驱动的 42步进电机驱动硬件如下: 首先你要了解步进电机的驱动原理,我也不啰嗦了,请看这边博客: 二相四线,四相五线,四相六线步进电机接线及驱动方法 , 看完这篇你就知道驱动和接线的原理了。 起初我也为如何接线烦恼,因为有些博客在讲述这些问题的时候没有讲的很透彻。 方法如下: ①用万用表调到欧姆档,用其中一个表笔搭在一个引脚上,依次测其它.

Jodan132的博客 1万+

OmniParser V2 和 OmniTool 让 AI 来控制 Windows 设备

OmniParser V2 和 OmniTool 是由微软开发的一套工具,通过屏幕解析技术让 AI 能够理解和控制 Windows 设备。OmniParser V2 是一款数据解析工具,可以解读屏幕内容,并将内容传递给大模型OmniTool 则是一个运行 Windows Agent 的工具,提供 Windows 界面给 AI 操作。

简简单单Onlinezuozuo 2726

RK3568平台(网络篇)添加网络交换芯片RTL8306M

该交换芯片支持I2C、SPI、mdio通信,但是看ast1520的uboot代码采用的是mdio去通信phy芯片的,所以暂时也先采用mdio的方式,需要配置相应的引脚才可以配置成mdio通信模式,具体的配置硬件工程师解决。RTL8306M芯片上可能没有提供MDC/MDIO接口,可以通过GPIO(General Purpose Input/Output)来模拟,GPIO可实现串行输入输出,且一般CPU上会提供很多GPIO接口供用户自定义使用。

weixin_49303682的博客 3931

Authentication Assertion Tickets,SAP 系统到系统单点登录里的短命凭证

SAP 系统间的身份传递机制存在 Authentication Assertion Ticket 和 SAP Logon Ticket 两种易混淆的凭证。前者用于系统间短时身份委托(有效期2分钟,通过HTTP头传输),后者用于浏览器SSO(可配置有效期,通过Cookie传输)。Assertion Ticket依赖签发系统的数字签名和严格的时间同步,适用于ABAP/Java系统间的后台作业调用。现代SAP架构已转向OAuth 2.0等标准协议,但老系统中仍需注意两种票据的关键差异:传输方式、有效期、接收方限制

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 601

计算机网络基础:揭开网络世界的神秘面纱

计算机网络基础:揭开网络世界的神秘面纱,计算机网络已深度融入现代生活,这篇文章对其基础内容展开全面阐述。开篇介绍计算机网络的定义,说明其由计算机设备、网络设备和传输介质构成。接着从地域范围和拓扑结构两个维度对计算机网络进行分类,并详细讲解 OSI 和 TCP/IP 参考模型,明晰各层功能与联系。随后阐述网络通信协议的定义及常见协议,如 TCP/IP、HTTP 等。最后聚焦网络安全,涵盖定义、重要性以及防火墙、加密技术等常用安全技术。文章旨在帮助读者构建计算机网络基础知识体系,理解其在生活和工作中的应用与价值

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 6万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: 第21章:代码重构——用AI将面条代码重构为Clean Code
下一篇: 第23章:代码迁移——用AI将Vue2迁移到Vue3、将JS迁移到TS
sfishfly
博客等级 码龄1年 17粉丝 211原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值