本次分享源于在公司内部的一次 AI 编程交流。与直接上手工具相比,我更想先把方向和框架说清楚:为什么要用、用什么原则判断、如何系统推进。实践反复证明,缺少这些底层认知,后续的 AI 编程容易迷失,遇到问题也缺少可复用的解决路径。
在过去的 AI 编程实践中,我观察到一个现象:掌握工具很快,用好工具很难。部分开发者在使用 Cursor、Copilot、Codex 等时,常陷入两个极端:要么过度依赖生成,失去对代码的掌控;要么仅把 AI 当作自动补全,没有发挥真正价值。问题的根源并不在工具,而在于缺少一套应对 AI 编程的思维框架。
今天的分享不讲具体技巧,而是退一步,讨论 AI 编程时代的基础原则与核心方法论。这些内容看似“务虚”,实则来自持续实践的“硬道理”。决定我们能否驾驭 AI,而非被 AI 驾驭。
01 — 风起云涌:变更的十字路口
AI 正在重塑软件开发的底层逻辑。从代码生成到架构设计,从测试到部署,几乎每个环节都在被重塑。我们站在一个历史性的转折点:编程不再是纯粹的人类活动,而是人机协作的新范式。这带来机会,也提出了新的问题:AI 编程的底层逻辑是什么?传统编程的基础原则和方法论是否仍然适用?角色如何重新分工,人与模型如何有效对话,工程流程如何重构以承载新的协作模式。
02 — 常见误区
在实践和观察中,我发现在使用 AI 编程时容易陷入几个典型误区,这些误区严重影响了 AI 工具的价值发挥。
第一个误区是 过度依赖或完全排斥,把 AI 当作万能钥匙,放飞自我,不加思考地接受所有生成的代码,结果是代码库迅速腐化,充满了自己都不理解的「魔法代码」。我也曾有过类似经历:一个项目几乎全由 AI 生成,后来没有仔细阅读与检视,直到某天出现 bug 时,代码已难以理解和修复。另一个极端是完全排斥,认为 AI 不靠谱而拒绝尝试,坚持手写每一行。这两种态度都错失了 AI 的真正价值——作为增强而非替代的工具。
第二个误区是 对 AI 能力的模糊认知,不清楚 AI 擅长什么、不擅长什么,碰到问题容易进入死胡同。AI 擅长模式识别、代码开发、自动化测试,但在业务理解、方案设计、需求验收上仍需人类把关。不了解这些边界,就容易在错误的地方使用 AI,或在合适的地方没有使用,效率不升反降。
第三个误区是 被动等待或盲目追新。总在等待完美的模型或工具出现,认为现在的工具还不够好而观望;也有人相反,热衷追新,将大量时间花在切换模型和工具上,却从未深入掌握任何一个。前者错失当下机会,后者被工具表层牵着走,两者都不可取。
正确的态度应该是:掌握基础的原则和方法论,了解最新的进展,理性评估每个工具的优劣,懂得在合适的场景使用合适的工具,通过实践不断优化人机协作的模式。
03 — AI 编程的三大核心要素
理解 AI 编程,需要把握三个核心要素:模型、工具和人。这三者的关系和相互作用,决定了 AI 编程的效果上限。
模型是智能的引擎,它决定了能力的天花板。 不同模型有不同的优势,头部模型 GPT-5、Claude 4、Gemini 2.5 各有侧重,国产模型性价比较高。一些复杂的任务,需要更强的模型能力,比如代理能力、上下文理解、多模态等。理解不同模型的特点、优势和局限,是用好 AI 编程的第一步。
工具是桥梁,将模型能力转化为实际生产力。 一个好的工具能让模型的价值放大数十倍,从早期 Github Copilot 到现在的 Cursor、Claude Code、Codex 等,优秀的工具不仅能够完整理解整个项目,使用各种工具,支持异步运行,具备自定义命令和 Hooks 等功能,大幅提升开发效率。
人始终是核心,是整个系统的指挥官和决策者。 人定义需求、设计架构、把控质量、做价值判断。AI 再强大,也需要人来设定目标、提供上下文、验证结果。更重要的是,人具有 AI 不具备的能力:创造性思维、道德判断、责任承担。在 AI 时代,人的角色不是被削弱,而是被提升,从代码的编写者升级为系统的设计者,从实现细节的执行者升级为业务价值的创造者。
这三者形成了一个协作闭环:人通过工具使用模型,模型通过工具赋能人,工具基于人的反馈不断优化。 成功的 AI 编程不是某个要素的单点突破,而是三者的协同进化。这也是我们需要系统性方法论,而非简单工具教程的原因。
04 — AI 编程的「道法术器」
在探索 AI 编程的过程中,我发现很多问题的根源不在于工具不够强大,而在于缺乏系统的思维框架。这就是为什么我选择用「道法术器」这个框架来组织今天的分享。
道是永恒的原则,是软件工程的第一性原理。 包括价值导向(为什么做)、抽象思维(如何管理复杂性)、简约设计(less is more)、演化思维(拥抱变化)、权衡智慧(没有银弹)、协作精神(1 + 1 + 1 > 3)。这些原则在 AI 时代不仅没有过时,反而更加重要。当 AI 让编码变得容易,我们更需要思考"该不该做"而不只是"能不能做"。道是我们在快速变化中的锚点,是判断和决策的根本依据。
法是经过验证的方法论,是前人智慧的结晶。 敏捷实践、设计模式、测试驱动开发、契约驱动开发等这些方法论在 AI 时代获得了新的生命力。AI 让这些最佳实践更容易实施:自动生成测试用例、智能推荐设计模式、加速敏捷迭代。掌握这些方法论,你就可以更快掌握与 AI 协作的通用语言。
术是具体的技巧和技能,是日常实践中的 know-how。 如何写出好的提示词、如何选择合适的模型、如何调试 AI 生成的代码,这些技巧需要在实践中不断打磨。术是变化最快的一层,但掌握了道和法,你就能快速学习和适应新的术。
器是工具和平台,是术的载体。 Cursor、Copilot、Claude、Codex、Devin 这些工具日新月异,但记住:工具永远是手段而非目的。选择工具要基于你的需求和场景,而不是盲目追新。
这四个层次是递进且相互支撑的关系。道指引方向,确保我们不迷失;法提供路径,让我们高效前进;术解决具体问题,让想法变成现实;器提升效率,让我们事半功倍。 今天我们重点探讨道和法,因为这是根基——有了坚实的根基,术和器的学习将水到渠成。下次分享,我们将深入具体的术和器,展示如何把这些理念转化为实际生产力。
05 — 道:智慧的底层架构
进入「道」的部分,我们要探讨软件工程的底层架构——那些永恒不变的原则。在 AI 时代,「道」的意义不是被削弱,而是被强化。当工具快速迭代、技术日新月异时,这些原则成为我们的锚点,让我们在变革的浪潮中保持方向感。
什么是不变的?价值判断、系统思维、美学追求、智慧决策,这些人类独有的能力。什么是变化的?实现速度、工具形态、协作方式、迭代节奏,这些可以被 AI 增强的部分。关键在于,我们要在加速中保持清醒,在自动化中保留判断。
接下来,我们将深入探讨六个核心之道,每一个都是软件工程的永恒主题,在 AI 时代获得了新的诠释和实践。
06 — 价值之道:从问题到影响力
软件的意义在于改变现实。从真实问题出发,创造可感知的价值,实现可持续的影响。
不是所有问题都值得解决,不是所有解决方案都需要软件。真正的价值创造始于对问题本质的深刻理解,而非对解决方案的迷恋。在传统开发中,我们常常陷入技术本身的魅力,忘记了软件存在的根本目的。写了成千上万行代码,实现了复杂的架构,却解决了一个不存在或不重要的问题。这种"技术自嗨"在 AI 时代变得更加危险,因为 AI 让实现变得如此容易,我们可能在错误的方向上跑得更快。
价值之道要求我们首先识别真实需求。 不是用户说什么我们就做什么,而是要深入理解用户痛点,找到问题的本质。AI 可以帮我们快速验证假设,通过原型快速获得反馈,但判断什么值得做,这是人类的独特能力。
其次是定义价值指标。 所有投入必须指向明确的价值产出,建立反馈循环持续验证。传统的代码行数、功能点数在 AI 时代已经失去意义。我们需要新的价值度量:用户满意度、问题解决深度、系统适应性。每一个功能都要问:它为用户创造了什么价值?这个价值是否可以被度量?
最后是保持价值理性。 防止为技术而技术,抵制过度工程,确保每一行代码都服务于核心价值。AI 的强大能力是一把双刃剑 —— 它既可以帮我们快速实现价值,也可能诱使我们偏离价值。当 AI 可以轻松生成任何功能时,说"不"比说"是"更重要。
谈谈我理解的价值之道公式:最终价值 = 问题定义的深度与准度 × 解决方案的实现效率。 前者包括商业洞察、用户同理心、创造性思维等,以人为主、AI 为辅;后者包括工程能力、工具链、AI 协作方式等,AI 极大提升了实现效率,但问题定义的能力仍然是人类的独特优势。在 AI 时代,我们的角色从代码实现者转变为价值定义者,从功能堆砌者转变为问题解决者。
07 — 抽象之道:驾驭复杂性的智慧
抽象不是简化,而是复杂性的优雅组织。它是人类认知的根本能力 —— 从无序中发现模式,从特殊中提炼普遍,从具体中升华本质。在软件领域,抽象是我们驾驭复杂性的核心武器。
一个优秀的抽象就像一个精心设计的接口,隐藏了实现的复杂性,暴露了简洁的使用方式。领域本质抽象帮我们识别和定义问题空间的核心概念,建立统一的领域语言。架构意图抽象将业务需求转化为系统能力,设计清晰的架构边界。接口契约抽象定义组件间的交互协议,确保系统的可组合性。
抽象是一种认知压缩技术,将复杂信息编码为可管理的心智模型,好的抽象像呼吸一样自然:需要时展开细节,不需要时收起复杂。抽象的本质是划定边界,决定什么该暴露,什么该隐藏。但边界它不是墙,而是接口,用于定义交互的协议而非阻断联系。
AI 时代,抽象的意义发生了深刻变化。传统时代,我们主要在代码层面做抽象 —— 类、接口、模块。现在,我们需要在意图层面做抽象,即如何向 AI 描述我们想要什么,而不是如何实现。这要求我们具备更强的领域建模能力,能够提炼业务本质,设计领域特定语言来精确表达意图。
抽象的三原则在 AI 时代依然重要。 完整性要求抽象完整表达领域概念,不能因为 AI 可以推理就含糊不清。稳定性意味着好的抽象经得起时间考验,即使工具在变、实现在变,抽象层应该保持稳定。可演化性要求预留扩展空间,适应未来变化,因为 AI 会不断带来新的可能性。
优秀的抽象是思维的杠杆,抽象能力决定了我们能够驾驭的复杂度上限。 在 AI 加速的世界里,抽象不是负担,而是让我们能够站在更高层次思考的阶梯。当 AI 处理具体实现时,人类的独特价值在于设计优雅的抽象,这种能力是目前 AI 还无法替代的。
08 — 简约之道:本质的优雅呈现
所谓完美,不是指无可增添,而是指无可删减。
技术演进的终极方向是简约。它是一种极致的克制 —— 知道什么不该做比知道什么该做更难。从简单到复杂是能力的积累,从复杂到简约是智慧的升华。简约是通过深刻理解达到的优雅,AI 时代,我们需要在更高维度追求简约。
简约的一大好处是最小化认知负担,降低理解成本,提升直觉性。同时简约的系统更容易理解、修改和扩展,更少的约束带来更多的可能。
AI 带来了两个看似矛盾的挑战。 一方面是丰富的诱惑:AI 让增加功能的成本趋近于零,需求失控导致一切皆可能,复杂度债务在快速生成的代码中悄然累积。另一方面是简约的智慧:我们需要在无限可能中识别真正重要的事,保持概念模型的一致性和简洁性,为未知的未来保留足够的空白。
简约的本质是提纯,是剥离表象后的本质呈现,简约不是功能的减少,而是复杂度的消解。 每一个保留的元素都必须证明其存在的必要性。AI 可能会建议添加各种功能,但判断什么是真正需要的,这需要人类的智慧。我们要做复杂度的守护者,而不是功能的堆砌者。
AI 作为简约的赋能者,可以帮助我们识别和剔除伪需求,发现重复和冗余,建议合并和重构。 它能评估每个决策对系统复杂度的影响,确保概念模型的统一和简洁。但最终的决策权在人类手中,我们决定什么该保留,什么该删除。
另外探讨一下我理解简约的三重境界。第一重是代码简约:清晰的命名,直观的逻辑,最少的依赖。第二重是架构简约:统一的模型,清晰的边界,正交的设计。第三重是价值简约:聚焦核心价值,拒绝边缘诱惑,保持产品的灵魂。
在 AI 时代,简约不是限制,而是力量的集中。它让我们在快速变化中保持清醒,在无限可能中守住本质。 记住:能用 AI 快速实现不意味着应该实现,真正的智慧在于知道什么不该做。
09 — 演化之道:拥抱变化的生命力
完美的系统不是一蹴而就的,而是在持续的迭代和重构中演化而来的。
软件演化不是修补和堆砌,而是生命体的成长过程。它是一种有机的、适应性的变化——不断响应环境变化,同时保持系统的完整性和生命力。演化是承认不确定性、拥抱变化的哲学。
其实软件也像生物一样需要适应环境变化,遵循适应性生存的规律。我们也慢慢认识到渐进式完善带来的好处,小步快跑胜过大步跨越。好的架构会自然生长,而非强制规划,其中演化产生的复杂性是有序的,而设计的复杂性往往是混乱的。
AI 编程时代,让我们看看不同软件生命周期有哪些变化。探索期是快速试错阶段,AI 帮我们快速原型,人类把握方向。成长期需要稳定扩展,AI 规模化实现,人类确保质量。成熟期追求优化完善,AI 优化性能,人类重构架构。革新期寻求突破重生,AI 提供可能,人类决定突破的方向。
而在每个阶段,人机协作的模式都在动态调整。感知阶段,人类识别真实需求和价值机会,AI 收集数据、识别模式。设计阶段,人类定义演化方向,AI 生成方案、评估可行性。实施阶段,人类把控质量,AI 快速实现、自动化测试。学习阶段,人类提炼经验,AI 优化模型、改进生成质量。
当然我们还要认识到,AI 生成的代码可能缺乏长期视角,快速迭代可能忽视架构健康,需要更强的架构守护。速度不等于进步,演化方向迷失可能陷入局部优化,失去产品的核心价值。
AI 加速了演化的速度,从年度发布到持续交付,再到实时演化。但演化的智慧仍需人类把控。我们不是在追求更快的变化,而是在追求更有生命力的成长。每一次演化都应该让系统更强壮、更优雅、更接近它应该成为的样子。
演化的核心原则帮助我们在变化中保持稳定。 可逆性确保每个改变都可以安全回滚,这在 AI 快速生成代码时尤其重要。渐进性意味着大变革通过小步骤实现,避免一次性的剧烈变化。可观测性要求演化的影响必须可以被监测,我们需要知道每次变化带来了什么。适应性则要求系统结构支持未来的变化,而不是锁死在当前的实现中。
在 AI 时代,演化从被动响应变成主动适应。我们可以更快地试错、更快地学习、更快地改进。但同时也需要更强的架构守护,避免在快速迭代中失去系统的完整性。
10 — 权衡之道:约束中的最优解
没有银弹,一切皆权衡。在约束条件下寻找最适解而非最优解。
权衡不是妥协,而是在约束中寻找最大价值。它是工程智慧的核心——认识到完美是幻觉,现实是多目标优化问题。在 AI 时代,权衡的维度在增加,决策的速度在加快。我们不是在寻找完美答案,而是在动态平衡中寻找当下最适合的路径。
在软件开发过程中,约束存在必然性:资源永远有限(时间、预算、人力、认知)、目标永远冲突(性能vs可读性、灵活vs简单、安全vs便利)。同样的选择在不同上下文中价值不同,今天的最优解可能是明天的技术债,权衡的艺术在于识别当前最重要的价值。
权衡决策框架 TRADE 模型可以为我们提供系统化的方法。T 代表 Target,明确核心目标和优先级,避免在次要目标上过度优化。R 代表 Resource,诚实评估可用资源,包括时间、预算、团队能力和技术储备。A 代表 Alternative,生成多个可行方案,AI 可以辅助快速原型验证。D 代表 Decide,基于证据决策,预留调整空间,设置检查点。E 代表 Evaluate,持续监控决策效果,及时调整权衡策略。
AI 时代的权衡新规则改变了传统的决策模式。速度优先但不牺牲核心质量,快速迭代大于完美规划,但架构健康不能妥协。拥抱不确定性但保持方向感,接受无法预测所有变化,但核心价值必须坚守。利用 AI 能力但保持人类判断,AI 加速实现和验证,但价值判断必须由人主导。
权衡的三原则指导我们的决策。透明性要求让所有权衡显式化,避免隐性代价,特别是 AI 自动做出的权衡需要被审查。可逆性建议优先选择可调整的方案,保持灵活性,因为环境在快速变化。适应性要求定期重新评估权衡,随环境调整,今天的最优解可能是明天的技术债。
在 AI 加速的世界里,权衡不是一次性决策,而是持续的动态平衡。技术提供可能,智慧选择道路。AI 可以帮我们快速评估不同方案的优劣,但最终的价值判断和风险承担仍然是人类的责任。记住:在有限的资源和时间内,追求恰到好处比追求完美更重要。
11 — 协作之道:人机共生的艺术
软件开发从『人与人』的二维协作,扩展到『人-人-AI』的三维协作网络。
协作不是分工,而是智慧的交响。它是将不同主体的独特优势编织成更强大的整体能力。在 AI 时代,协作从人类之间的配合升维到人机之间的共舞,这是一种全新的创造模式。
在稍微复杂一些的项目中,软件开发离不开协作。传统开发中更多是人与人的协作,从需求→设计→开发→测试→部署,信息单向流动,角色边界清晰但僵化。而在 AI 时代,多方在 AI 的辅助下同时参与,信息多向流动,更多的是即时反馈,角色边界变得模糊且灵活。
人类角色在演化。我们成为架构师,定义愿景,把控演化方向。我们是价值守护者,确保每个决策服务于核心价值。我们是创意源泉,提供创新思路和美学判断。我们是质量把关者,定义标准,验证结果。这些角色无法被 AI 替代,反而在 AI 的辅助下变得更加重要。
人机协作呈现新的模式。在共同愿景层面,我们建立统一的目标和价值观,确保人类和 AI 理解共同方向。在动态平衡层面,我们根据任务特性调整协作模式,在效率和控制之间找到平衡点。在持续学习层面,人类学习更好地引导 AI,优化 AI 提示和交互模式。
AI 角色逐渐清晰。它是实现加速器,快速将想法转化为代码。它是可能性探索者,生成多样化方案供选择。它是一致性守卫,确保代码风格和模式统一。它是知识图谱,记忆和检索项目上下文。这些能力与人类能力形成互补,而非替代。
协作的成功需要新的思维和技能。沟通表达能力变得更重要,我们需要清晰表达意图给人类和 AI,能够教 AI 理解领域知识。 协作设计能力要求我们设计高效的人机协作流程,识别最适合的任务分配。系统整合能力帮助我们整合人类创意和 AI 效率,协调不同来源的贡献。
在 AI 时代,最强大的不是 AI,也不是人类,而是懂得如何整合两者优势的智慧系统。未来属于那些掌握人机协作艺术的团队。协作的本质是放大每个参与者的优势,创造 1 + 1 + 1 > 3 的涌现效应。
12 — 法:实践的智慧结晶
进入「法」的部分,我们要继续探讨实践的智慧结晶 -- 经验结晶、智慧传承。
AI 时代,「法」的核心价值在于它提供了可复制的成功模式。方向指引确保效率服务于价值,实践框架提供可复制的成功模式,效率放大让自动化减少执行摩擦。
这些方法论不是约束,而是赋能。它们是经过无数项目验证的最佳实践,在 AI 的加持下,这些方法论变得更容易实施、更快速验证、更智能优化。接下来,我们将探讨六个核心方法论,帮助我们更好的实践 AI 时代的编程开发。
13 - 敏捷与精益法:价值流动的艺术
当 AI 以光速迭代,我们不再只是构建产品,而是引导一个不断自我选择、自我进化的生命系统。
敏捷与精益不是流程和工具,而是应对不确定性的生存策略。它是一种持续感知-响应的生命状态 -- 在变化中保持灵活,在快速中保持精准。AI 时代,敏捷从方法论升级为生态系统的运作方式。
前面我们提到「演化之道」,如果说演化之道关注的是战略层面系统长期的成长和适应,那么敏捷和精益法关注的是战术层面上快速响应和价值流动。价值流期望寻找到从需求到价值的最短路径,消除一切不增值的活动,同时关注反馈环的缩短和学习的即时性。
传统的精益核心在于消除浪费:减少库存、等待、返工,优化流程、提高效率。AI 时代的精益则追求价值密度最大化:消除认知负担,优化决策路径,最大化每个行动的价值产出。
敏捷精益的 AI 增强模型带来了根本性变革,传统敏捷是以人为中心的迭代,而 AI 增强敏捷更像是人机融合的连续流。传统敏捷的计划会议变成了 AI 需求分析,手工编码进化为 AI 辅助生成,代码评审升级为 AI 自动审查,手动测试被 AI 测试生成取代,部署流程转化为智能化 CI/CD,回顾会议变成数据驱动洞察。
AI 带来敏捷的新维度,AI 可以在快速尝试多个方案,并行探索取代串行试错,预测性优化取代反应性改进,根据反馈自动调整。传统敏捷与 AI 驱动敏捷的对比令人震撼。迭代周期从 2-4 周缩短到小时甚至天级别,反馈延迟从天周降低到分钟小时,决策基础从经验加直觉进化到数据加算法,优化方式从回顾会议变成持续自动优化。
AI 时代的敏捷精益实践需要新的思维。微迭代让我们以小时为单位快速试验,可视化价值流动帮我们智能看板管理,持续实验让我们能够即时验证假设,感知更敏锐让我们更早发现价值和风险,响应更快速让想法到验证的时间极大缩短,学习更深入让每次迭代都积累可复用的智慧,演化更自然让系统像生命体一样自我优化。
敏捷精益是演化的引擎,演化是敏捷精益的方向。前者关注如何快速适应,后者关注适应成什么。在 AI 时代,两者共同构成了软件开发的动态平衡。掌握 AI 时代的敏捷精益,就是掌握在不确定性中创造确定价值的能力。
14 — 设计原则与模式:架构智慧的传承
设计模式为开发者提供了一套共享的词汇。当你说"我在这里使用了策略模式"时,其他了解这个模式的开发者能立刻明白你的设计意图和结构。
设计模式不是教条,而是集体智慧的结晶。它是软件工程的设计语言——让复杂的架构决策可以被讨论、理解和复用。在 AI 时代,模式从静态模板演变为动态的设计智慧。
设计模式是开发者之间的共同词汇,可以减少解释成本,提高协作效率,设计意图可以被精确传达。同时每个模式也都是无数项目的智慧沉淀,可以避免重复发明轮子,站在巨人的肩膀上思考。现在的 AI 工具支持 MCP、自定义规则、自定义命令和自定义 Hooks,通过这些手段,把沉淀下来的设计原则和模式予以固话,成为团队共同的财富。
以下三个维度展示了设计的层次。原则是北极星,包括不变的价值导向、SOLID + DRY + KISS + YAGNI。模式是地图,提供经过验证的解决方案,涵盖创建型、结构型、行为型,以及新兴的 AI 协作型模式。AI 是伙伴,提供模式识别和推荐、自动实现和优化。
在 AI 浪潮下,我们需要从内化于心的经验积累,走向外化为纲的系统治理。这涉及三个核心洞察。第一,诊断、药方与配药师 -- 设计原则洞察系统症结,设计模式提供成熟解决方案,而 AI 负责高效、精准地付诸实施。第二,创造人机协作的升维语言 -- 将原则与模式结合,形成一套 AI 能理解并执行、人类能主导与决策的元语言,实现更高层次的人机协同设计。第三,AI 辅助下架构治理的基石 -- 这套元方法论是构建 AI 辅助架构治理体系的关键,将人类智慧从繁琐的实现者角色,升维为战略性的决策者。
设计模式在 AI 时代的价值不是减少,而是增强。共同语言更重要因为人机协作需要清晰的设计语言,模式识别更快速因为 AI 帮助快速识别和应用模式,创新空间更广阔因为 AI 助力探索新的设计可能,质量保证更可靠因为可以自动验证模式的正确实现。掌握设计模式,就是掌握与 AI 协作创造优雅架构的能力。
15 — 质量保证之法:TDD / BDD
编写测试,直到恐惧转化为厌倦。
质量不是测试出来的,而是设计和构建出来的。TDD/BDD 不是测试技术,而是设计方法论——通过测试驱动思考,通过行为引导设计。 在 AI 时代,质量保证从事后验证转变为全程护航。
在项目开发过程中,大家都认可测试的价值,但都觉得编写测试费时费力。在 AI 时代这便不再是一个问题,通过业务需求的描述、规范的设计等,AI 可以理解需求生成完备测试集,自动发现边界条件和异常场景,基于代码变更智能生成回归测试。
以下三个核心理念定义了质量保证的本质。定义精确的期望 -- 测试定义确定的行为边界,从模糊需求到精确规范,让 AI 理解"什么是对的"。构建信心的桥梁 -- 每个通过的测试增加一分信心,测试覆盖度等于信任度,从小步验证到系统信心。加速质量的内化 -- AI 降低测试编写难度,自动化提高测试执行效率,质量从约束变成习惯。
在实践过程中,我喜欢使用以下「人机兵乓」的协作模式。开发者编写失败的用例(红灯 Red),明确期望行为,率先发出挑战。然后要求 AI 根据用例生成通过测试的代码(绿灯 Green),高效响应人类的挑战,由于目前的 AI 模型已经具备很强的代理能力,可以多轮修改和验证,成功率大幅提升。此后双方共同审查并优化代码,提升质量、可读性和架构。
这种协作模式改变了传统的开发节奏。测试不再是负担,而是人机对话的语言。AI 可以快速生成满足测试的实现,但判断什么值得测试、如何设计测试,这仍然是人类的独特价值。测试定义了 AI 生成代码的边界,防止 AI 偏离需求,确保生成代码的正确性。
因此在 AI 加速的开发中,TDD/BDD 的价值不是降低而是提升。定义更重要因为清晰的测试帮助 AI 理解需求,验证更快速因为自动化让质量检查实时化,信心更充足因为完备的测试让快速迭代成为可能,协作更高效因为测试成为人机协作的契约。记住:质量不是成本,而是效率的前提。没有质量的速度是虚假的速度。
16 — 持续集成之法:价值流动的加速器
在软件开发中,最重要的事情之一就是缩短从"我有一个想法"到"这个想法为用户创造了价值"之间的周期。CI 是缩短这个反馈循环的关键机制。
持续集成不是工具和流程,而是价值流动的加速器。它是将想法快速转化为价值的管道——通过自动化消除等待,通过集成暴露问题,通过反馈驱动改进。在 AI 时代,CI 从批处理进化为实时流。
持续集成的核心价值是风险的早期暴露,快速发现问题,将大风险分解为小风险。且这种即时的反馈,让错误还在记忆犹新时修复,保持了开发的流畅状态。这种自动化的模式保证了代码和质量的一致性,让做正确的事变得容易。
传统的 CI 更像是规则驱动的自动化,预定义的构建脚本、固定的测试套件、静态的质量门槛。AI 时代带来了 CI 新能力,比如预测性集成(预测集成冲突、提前识别破坏性变更、智能合并等),自愈性管道能力(自动修复常见构建问题、智能重试和降级、自动化故障恢复等)和优化的资源分配,变身智能化的价值管道。
以下三个关键能力定义了智能化 CI。智能化风险预防 -- AI 预测潜在集成问题,主动预防而非被动发现。标准化质量控制 -- 自动化确保环境一致性,AI 辅助的代码规范检查。透明化能力验证 -- 可视化的质量仪表盘,实时的性能监控。全方位健康体检确保系统的稳健。自动化安全扫描、性能回归检测、AI 辅助的异常发现,这些能力让 CI 成为守护系统健康的第一道防线。
CI 的演进展示了从门卫到加速器的转变。 第一,从阻挡到赋能,CI 不再是质量的守门员,而是价值交付的加速器。第二,从被动到主动,不只是发现问题,更要通过 AI 预测和预防问题。第三,从工具到智能,不只是自动化流程,更是智能化决策和优化。第四,从局部到全局,不只关注代码质量,更关注端到端的价值交付。
优秀的敏捷实践、测试驱动和持续集成让"想法到价值"的路径最短、最可靠、最可视。 在 AI 时代,CI 的角色发生了根本转变,它成为人机协作创造价值的关键基础设施。
17 — 契约驱动开发:意图与实现的桥梁
先定义,后实现;信任契约,而非信任实现。
契约驱动开发不是文档先行,而是意图的形式化表达。它是在混沌中建立秩序的方法 -- 通过明确的约定来管理复杂性,通过清晰的边界来实现解耦。在 AI 时代,契约从约束变成了桥梁。
怎么理解契约?我认为首先它是信任的基础,是信任的载体,通过明确期望来减少误解,让合作成为可能,让并行开发成为现实。最典型的契约便是接口定义,它重点在定义是"什么",而不用关心"如何"的问题,可以很好的隔离变化、保护核心。同时契约还是质量的保证,是自动化测试的基础,它对于 AI 来说是一份可验证的承诺,从"希望它能工作"到"保证它能工作"的任务清单。
传统的契约更多是人类之间的约定,比如接口文档、API 规范等,主要解决团队协作问题,依赖人工理解和遵守。而 AI 时代的契约更多是人机之间的协议,成为人类意图和 AI 能力的桥梁,比如提示词即契约,定义了 AI 的行为边界,它是可执行、可验证、可演化的。
下面契约的三层架构体现了不同层次的约定。定义层设计时契约,意图表达定义目标和期望行为,接口规范精确描述输入输出和异常,约束条件明确前置条件和不变式。实现层运行时契约,验证机制自动化验证契约遵守,监控告警实时检测契约违反,降级策略处理契约失败时的优雅处理。演化层适应性契约,版本管理保证契约的向前向后兼容,迁移路径实现契约升级的平滑过渡,学习优化基于使用数据改进契约。
以下以 Github 开源的 Spec Kit 为例介绍契约驱动开发流程。
-
Specify 规范定义阶段,你先提供一个高层次的描述,说明要构建什么、为什么构建,然后由智能体生成详细规范。这个阶段更关注高层次的问题(而不是技术细节),比如用户旅程、体验和成功的标准:谁会使用?解决什么问题?用户会怎样交互?
-
Plan 生成规划阶段,AI 根据契约生成高层设计和实现蓝图,开发者进行验证和精简。在这个阶段,你告诉智能体你期望的技术栈、架构和约束条件,提供总体技术方向,智能体会生成详细计划,确保符合架构与约束条件。如果公司有固定技术标准,这里要明确;如果需要接入遗留系统、满足合规要求或实现性能目标,也要写进来。你还可以要求生成多种方案,方便比较不同思路。
-
Tasks 拆分任务阶段,AI 拆分为可执行的子任务,开发者确认任务粒度和依赖关系。用 /tasks 命令让智能体把规范和方案拆解成可执行任务清单,智能体会把规范和方案拆解成实际工作任务,生成小而可验证的工作单元。每个任务都能独立实现和测试,这一点很关键,它让智能体能不断验证自己的成果,保持正确方向,就像我们上面介绍的「人机乒乓」一样。
-
Implement 执行实现阶段,AI 执行具体代码实现,开发者负责验证代码质量和契约符合度。智能体知道要做什么(因为规范定义了目标),知道怎么做(因为方案给出了路径),也知道具体任务(因为任务拆分已完成),这个时候可以使用异步编程、子智能体、AI 交叉检视等一系列方法提升效率,最终由人来把关验证。
所以,契约在 AI 协作中扮演着关键角色。它变成意图的精确表达,帮助 AI 准确理解需求,减少歧义,提高生成质量。它又是质量的可控保证,定义 AI 输出的验收标准,自动化验证 AI 生成的代码。这一切让它成为演化的稳定基础,保护系统不被 AI 的快速迭代破坏。
因此在 AI 时代,契约不再是繁重的文档负担,而是高效协作的基础。对人类而言,契约是意图的精确表达和控制的手段。对 AI 而言,契约是理解的基础和生成的约束。对系统而言,契约是质量的保证和演化的支点。 掌握契约驱动开发,就是掌握了在复杂性中建立秩序的能力。
18 — 上下文工程:人机认知的桥梁
AI 辅助开发不再仅仅是输入提示词,而是通过结构化、动态化的上下文管理,让 AI 理解并参与到复杂系统的设计与实现中。
上下文工程不是提示词技巧,而是认知空间的架构设计。它是在人类意图和 AI 能力之间构建精确的语义桥梁——通过结构化的信息组织,让 AI 真正理解问题域而非仅仅模式匹配。
在最近的 AI 编程实践中,我发现大部分的问题都可以归类为提供给 AI 的上下文出问题了。我经常比喻 AI 就像是一个”智商很高的实习生“或者”身强力壮的学徒“,如果我们没有精确的描述意图、提供足够的背景和可利用的工具信息、没有说明完成的标准,那么一切终究是徒劳。
以下五个维度构成了上下文工程的核心。指令性上下文包括核心任务剧本、明确 AI 的目标和角色限制,包括很多提示工程的框架和技巧。知识性上下文提供外部参考资料、AI 解决问题所需的基础知识和数据,可以通过契约驱动、文档集成、补充业务理解等方式提供。工具性上下文涵盖可用的外部能力,告知 AI 可以调用的函数、API 或工具,一个典型的例子就是使用数据库、Context7、PlayWright 等 MCP 开发和调试页面。记忆性上下文管理对话的历史轨迹,帮助 AI 理解当前交互的来龙去脉。状态性上下文提供即时的环境快照,让 AI 决策时的实时变量和环境信息。
在 AI 时代,上下文工程决定了人机协作的效率上限。质量决定输出,好的上下文产生好的结果。结构提升效率,组织良好的信息加速理解。演化保持活力,持续优化的上下文适应变化。标准促进复用,规范化的上下文提高团队效率。
上下文管理需要新的思维和技能。信息组织能力要求识别关键信息和噪音,构建清晰的信息层次,管理上下文的生命周期。意图表达能力需要将需求转化为精确的上下文,使用领域特定语言,建立一致的术语体系。反馈解读能力帮助理解 AI 的输出和局限,识别上下文不足导致的问题,持续优化上下文策略。
记住:AI 的能力边界不是由算法决定,而是由我们提供的上下文决定。上下文工程是 AI 协作的基础设施,它让 AI 从简单的模式匹配升级为真正理解问题域的智能助手。在快速变化的技术浪潮中,掌握上下文工程就是掌握与 AI 深度协作的语言。
19 — 小结
我们的探索即将告一段落,让我回顾这次旅程的核心洞察。
「道」是价值与智慧的永恒追求。在 AI 时代,它是软件的本质与变化中的锚点。这六个道不是抽象的理论,而是实践的指南针。价值之道提醒我们软件存在的根本意义,抽象之道教会我们驾驭复杂性的智慧,简约之道让我们在丰富中保持克制,演化之道引导我们拥抱变化的生命力,权衡之道帮助我们在约束中寻找最优解,协作之道展示了人机共生的新模式。
「法」是实践与方法的智能进化。AI 让原则更易实施、快速验证、智能优化。这六个法是经过千锤百炼的最佳实践。敏捷精益法让价值流动如水般自然,设计模式成为人机对话的共同语言,质量保证从事后验证变成全程护航,持续集成从批处理进化为实时流,契约驱动从约束变成桥梁,上下文工程成为认知空间的架构设计。
「术」是工具与技能的持续更新。掌握工具旨在服务「道」和「法」,而非追求最新。虽然今天没有深入探讨术的具体内容,但要记住:工具会快速迭代,使用工具的智慧却是永恒的。选择合适的工具比追逐最新的工具更重要,理解工具的原理比记住工具的用法更有价值。
「道法术」三者形成了完整的体系。「道」指引方向,让我们不在技术浪潮中迷失。「法」提供路径,让经典实践在 AI 时代焕发新生。「术」解决问题,让想法快速变成现实。它们不是独立的,而是相互支撑、相互强化的整体。
在 AI 编程的时代,最重要的不是掌握某个具体的工具或技巧,而是建立起完整的思维体系。当你理解了「道」,就能在变化中保持定力。当你掌握了「法」,就能高效地与 AI 协作。当你熟练了「术」,就能将想法快速实现。这个体系给了我们应对未来的信心。无论技术如何发展,工具如何更新,我们都能保持清醒的头脑和正确的方向。
20 — 拥抱变革,进化为新一代开发者
AI 编程不是要取代我们,而是将我们从繁琐的代码实现中解放出来,让我们能更专注于软件工程中最具创造力和价值的部分——理解问题、设计系统、定义价值。
从代码实现者到意图设计师,这是角色的第一次进化。我们不再需要记住每一个 API 的细节,不再需要手写每一行样板代码。我们要做的是定义「what」和「why」,让 AI 处理「how」。设计系统架构而非编写每一行代码成为我们的核心工作。我们要把控方向而非陷入细节,成为系统的架构师而不是代码的搬运工。
从手工艺人到智慧编排者,这是能力的第二次升华。整合人机协作流程成为新的核心能力,我们需要知道什么时候该让 AI 发挥,什么时候需要人类介入。构建可演化的系统比构建完美的系统更重要,因为变化是唯一的不变。培养团队的 AI 协作能力将成为技术领导者的新使命。
核心竞争力正在发生转变。从掌握语法到理解业务,从编写代码到设计系统,从个人能力到协作智慧。这个转变不是一蹴而就的,它需要我们不断学习、实践、反思。
这种进化带来的不是威胁,而是机遇。我们将从繁重的编码工作中解放出来,有更多时间思考真正重要的问题。我们将从局部的实现者成长为全局的设计者。我们将从技术的执行者进化为价值的创造者。
拥抱这种变革需要勇气,也需要智慧。勇气让我们敢于走出舒适区,尝试新的工作方式。智慧让我们知道什么该坚守,什么该改变。在这个过程中,「道法术」的框架将是我们的指南针,帮助我们在变革中保持方向感。
记住,真正的威胁不是 AI 会取代我们,而是我们拒绝进化。真正的机会不是 AI 有多强大,而是我们能与 AI 创造多大的价值。未来属于那些能够驾驭 AI、与 AI 共舞的新一代开发者。
21 — 理性探索,智慧前行
最后我想引用一下之前看到的一句话,非常适合分享给各位开发者:冷静的探索,是对 AI 时代最大的尊重。
技术的发展从来都是双刃剑。AI 编程工具的强大能力既是机遇,也是挑战。我们需要的不是盲目的乐观,也不是过度的恐慌,而是理性的认知和务实的行动。
保持冷静意味着不被炒作蒙蔽。每天都有新的 AI 工具发布,每周都有惊人的进展宣布。但我们要记住,真正改变世界的不是工具本身,而是使用工具的人。不要因为 AI 能快速生成代码就忽视代码质量,不要因为 AI 能自动化测试就放松质量标准,不要因为 AI 能理解需求就不再深入思考问题本质。
保持探索意味着持续学习和实验。AI 技术在快速发展,我们的认知也需要不断更新。但这种学习不是盲目追新,而是有选择、有重点的深入。选择与你的工作最相关的领域深入研究,在实践中验证和改进你的方法,建立起自己的 AI 编程体系。
智慧前行需要我们保持平衡。在效率与质量之间找平衡,在创新与稳定之间找平衡,在人类判断与 AI 建议之间找平衡。这种平衡不是静态的,而是动态调整的过程。
冷静的探索还意味着保持批判性思维。AI 生成的代码不一定是最优的,AI 的建议不一定是正确的,AI 的判断不一定符合实际需求。我们需要保持独立思考的能力,保持对问题本质的追求,保持对价值的坚守。
最重要的是,要记住软件开发的本质没有改变。我们依然在解决问题,创造价值,改变世界。AI 只是让这个过程变得更高效,但方向的选择、价值的定义、品质的追求,这些永远是人类的责任。
冷静不是冷漠,探索不是冒进。它是一种成熟的态度,一种专业的素养,一种面向未来的智慧。在这个充满变革的时代,保持冷静的头脑和探索的精神,我们就能在 AI 浪潮中找到自己的位置,创造独特的价值。
22 — Q & A 交流
感谢聆听!现在欢迎大家提问或分享自己的看法。