引言 gomonkey 是笔者开源的一款 Go 语言打桩框架,目标是让用户在单元测试中低成本地完成打桩,从而将精力聚焦于业务功能的开发。 gomonkey 支持为函数、成员方...
引言 gomonkey 是笔者开源的一款 Go 语言打桩框架,目标是让用户在单元测试中低成本地完成打桩,从而将精力聚焦于业务功能的开发。 gomonkey 支持为函数、成员方...
以猜数字游戏为例,记录了从需求到上线的完整 AI TDD 开发过程 一、背景 本文记录了一次完整的 AI 辅助软件开发实战,以经典的猜数字游戏(Bulls and Cows)...
一、背景 场景还原 2025 年,越来越多的团队开始用 AI 做代码评审。无论是用 GPT、Claude 还是自建模型,流程大体相似: 看起来很美好,直到你遇到这样的情况: ...
背景 我们曾经认为不同领域的 Agent 会有很大的不同,每个 Agent 需要自己的工具和支撑结构,这意味着每个领域都需要一个单独的 Agent: 当然,每个领域的定制化非...
背景 程序员圈子里有句老话:"编程一时爽,故障火葬场。" AI 时代,这句话要升级一下:"AI 编程一时爽,外场故障火葬场。" 为什么?先看一组对比: 指标以前现在一天产出2...
背景 如果你在软件行业待过几年,大概率听过不止一次:"我们要推 TDD"、"我们要落地 DDD"、"我们要写好 BDD"。然后呢?大多数团队试了一阵子,最后都不了了之。文档没...
背景 最近一段时间,我们陆续完成了三个循序渐进的 Agent 实践[https://github.com/agiledragon/agent]: 01_build_agent...
背景 从上一篇文章 Agent工具调用:从正则解析到Function Calling[https://www.jianshu.com/p/56fea75a3139] 中可以看...
引言 在上一篇文章100行代码从零实现一个Agent[https://www.jianshu.com/p/409ad1ac183f]中,我们用正则解析实现了工具调用: 这种方...
Agent 概念 想象一下,你走进一家餐厅,服务员问你想吃什么。你说:"来2份汉堡和1杯可乐"。 一个普通的聊天机器人可能会回答:"好的,您点了2份汉堡和1杯可乐。"——但它...
一、引言 在之前的一篇文章《AI TDD 开发方式初体验》[https://www.jianshu.com/p/054c3ad66514]中,我分享了使用 AI 辅助 TDD...
背景 最近 MCP(Model Context Protocol,模型上下文协议) 概念非常火,很多 AI 专家张口闭口 MCP,仿佛不知道 MCP,出门都不好意思打招呼。 ...
需求澄清 猜数字游戏的规则包括: 输入4个0~9中不同的数字,按enter键查阅结果是否正确(以“?A?B”形式显示)说明: ?A表示所输入的?个数字和位置都与手机的答案相同...
引言 在软件设计中,Agent 模式和 Proxy 模式指的都是代理模式,但在内涵上是不同的: Agent 代理,更多地代表客户端,负责处理客户端的请求,且可能会在处理过程中...
引言 多态(Polymorphism)是面向对象编程和类型系统中的核心概念,它是指在使用相同的接口时,不同类型的对象,会采用不同的实现。 根据类型系统的不同,多态的实现方式也...
引言 通过上一篇文章《深入理解 Rust 所有权机制》[https://www.jianshu.com/p/3f8cc98c2f44]的学习,我们对 Rust 如何管理内存有...
TDD回顾 TDD(Test-Driven Development,测试驱动开发)是 XP(Extreme Programming,极限编程)实践中的一项核心技术,它以测试作...
引言 变量是程序中用于存储和操作数据的命名实体,其值可以在程序运行期间发生改变。类型是对变量的区分,决定了变量可以存储的数据种类和可以执行的操作。 类型可以分为原生类型和组合...
引言 AOP(Aspect-Oriented Programming,面向切面编程)是一种编程范式,旨在通过将横切关注点(如日志、事务管理等)从业务逻辑中分离出来,从而提高软...
什么是领域模型 在领域驱动设计(Domain-Driven Design,DDD)中,领域对象分为实体(Entity)和值对象(Value Object)。实体指的是能够通过...