获课:yinheit.xyz/18297/
从“抽卡”到“控图”:SDD+Harness如何重构AI全栈开发的工程秩序
核心结论:当AI编程从“代码补全”进入“AI驱动开发”,核心矛盾已从“能不能生成代码”转向“如何让生成的代码可控、可维护、可落地”。SDD规范驱动与Harness驾驭工程的组合,本质上是在弥合大模型的概率性输出与软件工程的确定性要求之间的鸿沟。
Vibe Coding的困境:五分钟生成,两小时Review
Vibe Coding的兴起让原型开发速度大幅提升,但当项目规模膨胀到万行级别时,问题集中爆发。AI生成的代码风格漂移,命名和分层与团队规范不一致;复杂任务超出模型窗口限制,AI“遗忘”早期决策导致前后矛盾;AI倾向于“能跑就行”,复用率低,重复代码遍地-15。
得物技术团队的实践揭示了一个关键数据:AI生成代码花5分钟,人工Review和返工花2小时。核心矛盾在于:大模型本质是概率驱动的非确定性引擎,而软件工程要求绝对的确定性。如何弥合这一鸿沟,成为AI工程化的核心命题。-15
SDD:让规范成为AI的“唯一事实来源”
SDD(Specification-Driven Development,规范驱动开发)的核心思想是:将需求文档作为AI开发的“唯一事实来源”-15。与传统开发不同,SDD中的Spec不只是“文档”,而是可被AI解析、可驱动代码生成、可作为验收标准的结构化规范。
一份完整的SDD通常包含三个核心文档:proposal.md描述“为什么要做”和“要做什么”;spec.md包含组件设计、接口契约、数据结构;tasks.md将需求拆解为可执行的代码变更单元-15。关键在于,这些文档以结构化Markdown编写,AI可直接解析,而非仅供人类阅读的“说明书”。
在AI语境下,SDD的内涵已远超接口定义。业务功能规范以Gherkin语法或OpenAPI规范定义精确需求;架构与部署规范以Kubernetes CRD或Terraform变量定义资源约束;SLO规范以Service Level Objectives形式定义服务质量目标,作为AI进行金丝雀发布分析和自动回滚的“裁判标准”-1。
Harness思维:让AI“模仿”,而非“凭空创造”
Harness Engineering的核心洞察在于:给AI一个已有的实现作为参照,让它照着复刻,而非凭空创造。得物技术团队的对比实验清晰地展示了两种提示词方式的差距-15。
不推荐的提示词是“请实现一个结束语管理的CRUD接口”。推荐的写法是“请参照现有‘场景欢迎语’功能(后端接口/api/v1/feature/list,前端入口FeatureTable/index.tsx:53-58)实现‘结束语’功能。数据结构、分层方式、命名风格都保持一致。新增场景code:SCENARIO_CLOSING”。约束精度决定了代码可用率——后者比前者高出50个百分点以上。-15
Harness平台的角色是AI Agent的“操作系统”-1。它的AI模块AIDA具备故障根因分析能力,能关联日志、指标、Trace和变更事件,自动推断失败原因;智能金丝雀发布不依赖静态阈值,而是基于历史部署数据动态学习“正常”行为模式;自然语言生成Pipeline让开发者可以直接用“为我部署一个带金丝雀策略的nginx服务到prod集群”这样的描述,由AIDA翻译为Pipeline YAML-1。
课程的技术定位与边界
慕课网的这门课程以“外国人来中国旅游AI平台”为实战主线,覆盖Agent Teams多智能体、MCP/CLI/Skills、RAG知识库、浏览器自动化、AI代码Review、Docker容器部署全链路-2。19小时、256人学习、8.86分的体量,定位是帮助有编程基础的学习者建立“AI工程化”的认知地图。
课程标注“初级”难度,但SDD和Harness的入门门槛不在语法,而在工程判断力:知道规范应该写到什么粒度才既能约束AI又不阻碍探索,知道规则应该覆盖哪些维度、以什么顺序加载、在什么条件下回退。这种判断力无法通过19小时的理论学习获得,只能在真实项目的失效与修复中逐步积累。课程标注了起点,但在地图上行走的能力,需要在真实工程中亲自走一遍。
#免责声明#
本站不存储任何实质资源,该帖为网盘用户发布的网盘链接介绍帖,本文内所有链接指向的云盘网盘资源,其版权归版权方所有!其实际管理权为帖子发布者所有,本站无法操作相关资源。如您认为本站任何介绍帖侵犯了您的合法版权,请发送邮件 linkshow2025@163.com 进行投诉,我们将在确认本文链接指向的资源存在侵权后,立即删除相关介绍帖子!
暂无评论