目录

未来:创建智能体、编排智能体创造产品服务。

与熟练的 Prompting 相比:精练上下文 + 快速校验 AI 内容,才是新时代需要的能力。

结论

来源知乎问题:“GPT 时代,精进编程思维 + 熟练 Prompt 是否是新的编程范式?”

与熟练的 Prompting 相比:精练上下文 + 快速校验 AI 内容,才是新时代需要的能力。

生成式 AI 在软件工程的缺陷太明显了,软件工程是确定性的,你不可能阅读生成式 AI 一次生成的上千行代码,并且它执行两次的结果还不一样。光是熟练的 Prompt 并不解决任何问题,Prompting 的核心是如何精炼出上下文,而大部程序员表达能力都一般。

因此,我们会分为四个能力,当然适应自身的 AI 工作流不是必然的。

重点还在于如何快速校验 AI 内容

引言:生成式 AI 的能力与局限性

生成式 AI 工具要求开发人员具备一定的学习成本,并且在初期使用时通常难以达到稳定的生产效率。

首先,生成式 AI 的输出质量很大程度上依赖于提供的上下文和输入的清晰度,若缺乏准确的问题描述或详细的上下文信息,AI 生成的代码往往无法满足需求。

此外,生成的代码可能包含“幻觉”现象,即 AI 生成的内容表面上看似合理,但实际上可能与所需逻辑不符,这增加了代码审查和修正的工作量。

AI 在开发流程中仍需依赖人类的主动判断,尤其是在设计、架构和需求分析等复杂任务中,AI 只能作为辅助工具,协助完成细化任务或提供启发。

一、AI 辅助编程工具的实用技巧:不同模式的详细分析

在使用 AI 辅助编程工具时,熟悉和灵活应用不同模式,能够显著提升工具效用。常见的 AI 辅助编程模式主要包括:聊天模式、实时辅助、伴随辅助:

这些模式分别适用于不同类型的开发任务。

  • 聊天模式

    此模式主要通过文本对话帮助开发人员回答编程疑问、生成代码段、给出架构建议等。例如,GitHub Copilot Chat、Genie、通义灵码、cpmpat 等就是这种模式的典型代表。通过与 AI 进行对话,开发人员可以逐步询问需求、获得示例代码或架构设计的思路。此模式适合探索性较强的问题,如研究新框架、设计复杂业务逻辑等。

  • 实时辅助模式

    实时辅助模式在开发过程中提供即时提示,如代码自动完成、错误检查、性能优化建议等。实时辅助主要针对开发过程中频繁出现的基础任务,适合解决即刻发现的小问题,提高开发效率。

    Cursor、Windsurf、JetBrains AI Assistant 等工具具备这样的特性,有助于开发者在编码过程中保持顺畅的思维流。

  • 伴随辅助模式

    伴随模式贯穿整个开发周期,与开发人员的日常工作紧密相连。此模式的功能包括生成代码规范、优化提交信息、生成文档等。

    例如,AutoDev 可以伴随开发者进行错误分析、提交生成、文档编写等一系列活动,帮助开发者降低重复劳动成本。这种模式适合需要持续支持的长周期任务,如项目文档编写、代码规范化操作等。 Cursor、Windsurf 也应该算是伴随辅助模式。

考虑到不同工具的提示词上下文构建机制,我们还需要对工具的一些基本原理有所了解,以便于我们更好的使用工具:诸如于类 Copilot 工具的一些技巧。

二、如何降低 AI 生成内容的校验成本?

生成式 AI 工具的另一个挑战在于校验生成内容的准确性。为此,以下三种模式有助于有效降低校验成本

  • 自动化测试

    自动化测试是一种经典的校验方式,它关注输入输出的有效性,利用黑盒测试的方法验证生成代码的功能是否符合预期。例如,在生成 API 代码后,可以通过自动化接口测试工具如 RestAssured 或 Postman,对 API 的请求响应进行全面校验。这种测试方法适用于验证标准的输入输出场景,尤其是无需介入代码内部逻辑时。

  • Code Interpreter

    Code Interpreter 通过直接执行代码并提供即时反馈,帮助开发人员快速识别和修正问题。Code Interpreter 是较新型的校验模式,尤其在复杂计算或数据分析类任务中表现突出。以 v0.dev 为例,Code Interpreter 能够即时分析代码运行结果,快速反馈代码正确性。该模式适合需要即时反馈的编程任务,并减少代码生成过程中的错误传播。

  • 代码运行时检查

    通过 IDE 的实时反馈机制对代码进行运行时检查,可以在开发阶段尽早发现和纠正错误。利用如 Shire 编程插件或 Swagger API 校验工具,开发人员可以直接在 IDE 中进行提示词的校验。Shire 支持将生成内容的上下文即时运行,与 IDE 的集成可减少工具切换的成本,帮助开发者在较早阶段进行代码验证,显著降低了校验成本。

三、重新构想开发流程:如何减少环节以提升生产力?

生成式 AI 在编程辅助中的广泛应用,要求开发者重新审视和构建适应 AI 的开发流程。通过减少不必要的环节、优化工具集成和加强知识资产的管理,开发者可以进一步提升开发流程的生产力。

  • 资产驱动的开发流程

    AI 生成的内容通常包含丰富的知识资产。开发者可以通过创建知识库,将 AI 生成的代码规范、测试策略等产出,转化为可复用的知识资产,减少重复工作。开发者还可通过 AutoDev 等工具,将代码规范、提交信息等转化为自动生成的过程产物,帮助流程的简化。

  • 减少环节,聚焦核心产出

    在现有 AI 辅助工具的支持下,开发者可以在减少传统开发环节的基础上,直接生成特定功能代码。通过减少如繁琐的代码注释、文档撰写等手动环节,开发者可以将这些过程转化为标准化的 AI 指令产出。简化流程可大幅降低工作量,同时确保生成代码的一致性与质量。

  • 知识转换和流程优化

    在传统流程中,开发者需要经过需求分析、编码、测试等多个环节才能形成最终的产品。而 AI 助力的编码工作流允许开发者将隐性知识以显性化产出,通过将需求文档转化为 AI 提示词,快速生成代码和测试内容。通过这一知识转换过程,开发者可以在生成式 AI 的帮助下简化流程,减少不必要的返工和多轮调试。

通过重新构建开发流程、合理化环节分布,开发者不仅能更有效地适应 AI 编程,还可以在简化流程中实现生产力的最大化,从而为创新提供更多空间。

总结:面向未来——适应技能变化,放大专业能力

AI 驱动的时代对开发者的技能提出了新的要求。生成式 AI 使得开发者不仅可以成为代码的生产者,更可以成为知识的整合者流程的设计者

通过善于构建高效的 AI 编程工作流,开发者能够在高效验证 AI 内容的同时,逐步增强对生成式 AI 工具的适应能力,并提升自身的领域知识与技术深度。

在未来,随着 AI 技术的不断成熟,掌握生成式 AI 的能力将成为每一位开发者的核心竞争力。理解如何构建 AI 友好的上下文、有效校验生成内容,并设计适合自己的编码工作流,是提升专业技能、放大个人能力的关键。只有不断适应 AI 驱动的技能变化,开发者才能在技术飞速发展的浪潮中立于不败之地。


本文收藏来自互联网,仅用于学习研究,著作权归原作者所有,如有侵权请联系删除,阅读原文

9ong@TsingChan markdown 2025

部分引用格式为收藏注解,比如本句就是注解,非作者原文。