AI编程提示词工程:STAR法则与十大实战模板深度解析

2024年初,我接手一个电商订单系统重构项目。团队里有个年轻同事每天加班到十点,而他用的AI工具和别人并无差别。问题出在哪里?提示词。

同样的Claude或ChatGPT,有人用它半小时搞定核心模块,有人折腾三天还在返工。差距不在模型版本,而在提问方式。

为什么你的提示词总“差点意思”

多数人习惯这样的问法:

写一个计算订单金额的Java方法

AI会返回一段代码。但大概率是:用double做精度计算、没有参数校验、异常处理缺失。这不是AI不行,是它不知道你的代码风格和业务边界。

优秀的提示词遵循STAR原则:

  • Situation——背景:项目类型、技术栈、约束条件
  • Task——任务:具体要实现什么功能
  • Action——约束:用什么框架、遵循什么规范
  • Result——输出格式:只要代码?还是要注释?返回JSON还是Markdown?

这个框架我验证了三年,覆盖需求分析、代码生成、重构优化、测试编写、文档输出、性能调优、异常排查全流程。

 AI编程提示词工程:STAR法则与十大实战模板深度解析 IT技术 AI编程提示词工程:STAR法则与十大实战模板深度解析 IT技术

十大实战模板精讲

1.需求澄清:从模糊需求到落地文档

适用场景:产品丢来一句话需求,需要转成技术方案。

作为后端架构师,请帮我分析这个需求,输出一份技术方案大纲:

{需求原文}

要求:

1.拆解成用户故事

2.列出涉及的实体和关系

3.给出API端点设计(RESTful风格)

4.指出潜在的技术风险

实战案例:输入“用户下单后30分钟未支付,自动取消订单并释放库存”。AI输出包含:用户故事拆解→订单实体增加status和expire_time字段→延时队列与定时扫表方案对比→并发超卖风险分析。

2.单测生成:覆盖正常/异常/边界

适用场景:单元测试费时费力,让AI按最佳实践批量生成。

为以下Java方法生成JUnit 5单元测试:

{粘贴方法代码}

要求:

-覆盖正常场景、异常场景、边界场景

-使用Mockito模拟依赖

-每个测试方法命名清晰(should_xxx_when_xxx)

-断言使用assertEquals,并输出失败信息

3.代码解释:快速理解复杂逻辑

适用场景:接手遗留代码,或分析开源项目某个方法。

解释下面这段代码的核心逻辑和设计意图:

{代码片段}

请用通俗语言说明:

1.输入输出是什么

2.关键步骤(用编号列出)

3.使用了什么设计模式(若有)

4.可能的坑或改进点

4.重构建议:提升代码质量

适用场景:祖传代码看着难受,又不敢乱动。

请作为资深Java架构师,审查以下代码并给出重构建议:

{代码片段}

重点关注:

-违反SOLID原则的地方

-重复代码

-可读性问题

-性能瓶颈

请提供逐条建议,并给出重构后的代码示例。

 AI编程提示词工程:STAR法则与十大实战模板深度解析 IT技术 AI编程提示词工程:STAR法则与十大实战模板深度解析 IT技术

5.异常排查:根据堆栈定位问题

适用场景:线上报错,日志一堆,不知道哪里下手。

以下是应用抛出的异常堆栈,请分析可能的原因并给出排查思路:

{粘贴堆栈}

已知:{补充业务上下文}

请输出:

-最可能的根本原因

-需要检查哪几个类(文件名+行号)

-建议的临时修复和长期方案

6.性能优化:分析慢接口

适用场景:接口响应慢,怀疑SQL或算法有问题。

以下是一个Spring Boot接口的实现,请帮我分析性能瓶颈:

{代码}

请特别关注:

-循环内的数据库查询(N+1)

-可并行化的地方

-缓存使用机会

-大对象/集合的创建

输出优化建议和示例代码。

7.SQL与索引建议

适用场景:设计表结构或优化慢SQL。

需求:{描述查询需求}

表结构:

{CREATETABLE语句}

请:

1.写出符合需求的SQL

2.解释执行计划是否用到了索引

3.推荐创建哪些索引(B-tree/Hash/复合)

4.给出分页优化建议(若需要)

8.结构化知识文档(RAG友好)

适用场景:生成Markdown格式的接口文档,方便后续AI检索。

根据以下需求/代码,生成一份Markdown格式的技术知识文档:

{内容}

请包含:

-标题和简短介绍

-关键术语表

-流程图或时序图(Mermaid格式)

-示例请求和响应(若API)

-常见问题与避坑

9.设计评审:找架构漏洞

适用场景:设计方案想让AI扮演技术评审角色。

你是一位资深的系统架构师。请评审以下设计文档:

{文档或描述}

从以下角度提出问题:

-可扩展性(未来新增需求会破坏现有设计吗?)

-高可用(单点故障?降级方案?)

-数据一致性(是否有并发写冲突?)

-运维复杂度(部署、监控、扩容)

输出:至少3个疑问点和改进建议。

10.跨语言翻译:Python转Java

适用场景:找到优秀Python示例,想转成Java实现。

将以下{语言}代码转换成Java代码:

{代码}

要求:

-使用Java17+特性(var、record、switch表达式等)

-保留原逻辑和变量命名风格

-补充必要的异常处理

-输出完整类定义

核心使用技巧

给示例胜过给描述。想输出特定格式JSON,直接给样例最有效。

用分隔符隔离上下文。例如用“—我是代码—”标记代码块,避免跟指令混在一起。

一次只问一件事。复合问题分开问,产出质量和速度更稳。

把纠错成本前移。先让AI列出假设再写代码,有效降低幻觉风险。

总结

AI编程时代,“会提问”比“会写代码”更稀缺。这10个模板覆盖日常工作核心场景,建议收藏直接套用。AI不是魔法,它是你用得越顺手越强的工具。把提示词打磨好,把时间花在更有价值的架构设计上。