Hinweise für Programmierer Praktisches Handbuch für Ingenieure

提示工程的核心原则

在与AI代码助手协作时,有效的沟通策略至关重要。想象你正在指导一位技术能力很强但对你项目背景一无所知的同事,你需要提供足够的信息让他理解并解决问题。

关键原则

提供充分的上下文信息

  • 使用的编程语言和框架版本
  • 具体的错误信息和堆栈跟踪
  • 代码的预期功能和实际表现
  • 相关的项目约束和技术栈

明确具体的目标 避免模糊描述,清楚说明你要解决什么问题:

❌ “让我的代码更好” ✅ “重构这个函数以提高可读性,减少代码重复,并使用ES6语法”

分步骤处理复杂任务 将大任务拆解为小步骤:

PHP
1. 首先生成React组件的基本结构
2. 然后添加状态管理逻辑
3. 最后集成API调用和错误处理

提供输入输出示例 通过具体例子说明期望的行为:

PHP
// 期望: formatPrice(2.5) 返回 "$2.50"
// 期望: formatPrice(100) 返回 "$100.00"

调试场景的高效提示

实战案例:React Hook 依赖问题

问题代码:

PHP
const UserProfile = ({ userId }) => {
  const [user, setUser] = useState(null);
  const [loading, setLoading] = useState(true);

  useEffect(() => {
    fetchUser(userId).then(setUser).finally(() => setLoading(false));
  }, [userId, setUser, setLoading]); // 问题在这里

  return loading ? <div>Loading...</div> : <div>{user?.name}</div>;
};

❌ 低效提示:

PHP
我的useEffect有问题,组件一直重新渲染

✅ 高效提示:

PHP
我有一个React组件出现无限重新渲染问题:

预期行为:当userId变化时获取一次用户数据
实际行为:组件无限循环重新渲染
错误信息:Warning: Maximum update depth exceeded

代码如上,问题在useEffect的依赖数组中。setUser和setLoading是否应该加入依赖?为什么会导致无限循环?请解释React Hook依赖的最佳实践。

调试提示模板

PHP
问题描述:[简要说明问题]
预期行为:[代码应该做什么]
实际行为:[现在发生了什么]
错误信息:[完整的错误消息]
相关代码:[提供代码片段]
技术环境:[语言版本、框架版本]

重构场景的系统化方法

明确重构目标

重构时要明确改进方向:

重构目标提示模板示例
性能优化“优化这个函数的[具体性能指标]”“优化这个函数,消除O(n²)复杂度”
代码清理“重构以提高[可读性/可维护性]”“重构这个函数,减少嵌套并改善命名”
技术升级“将[旧技术]改写为[新技术]”“将类组件改写为使用Hooks的函数组件”

实战案例:性能优化重构

原始代码(存在O(n²)问题):

PHP
function processUserData(users, orders) {
  const result = [];
  
  for (let user of users) {
    const userOrders = [];
    for (let order of orders) {
      if (order.userId === user.id) {
        userOrders.push(order);
      }
    }
    
    const totalSpent = userOrders.reduce((sum, order) => sum + order.amount, 0);
    result.push({ ...user, orders: userOrders, totalSpent });
  }
  
  return result;
}

✅ 性能优化提示:

PHP
以下函数存在O(n²)时间复杂度问题,需要优化为O(n):

[代码]

优化要求:
1. 消除嵌套循环,使用Map进行O(1)查找
2. 减少重复计算,一次遍历完成数据聚合
3. 保持代码可读性,添加性能注释
4. 处理边缘情况:用户无订单的情况

请提供重构后的代码并解释优化思路。

功能开发的渐进式提示

从架构到实现的分层开发

第一步:架构设计

PHP
设计一个多步骤表单的状态管理架构:

功能需求:
- 支持3个步骤的表单流程
- 实时验证和数据持久化
- 前进/后退导航

技术栈:React + TypeScript + React Hook Form

请提供:
- 状态结构设计
- 主要Hook接口设计
- 状态转换逻辑

第二步:核心实现

PHP
基于前面的架构设计,实现核心的useMultiStepForm Hook:

要求:
1. 管理当前步骤和表单数据
2. 提供nextStep、prevStep、updateStepData方法
3. 集成表单验证逻辑
4. 自动保存到localStorage

请提供完整的Hook实现代码。

功能开发模板

PHP
## 任务描述
[你要解决的问题]

## 技术环境
- 语言/框架:
- 版本信息:
- 相关库:

## 具体要求
- 功能需求:
- 性能要求:
- 代码风格:

## 约束条件
- 不能使用:
- 必须遵循:

## 期望输出
[描述期望的结果格式]

高级提示技巧与常见误区

十大高效提示技巧

技巧模板Anwendungsszenario
角色设定“你是一名资深[语言]开发者,请[任务]”代码审查、架构建议
问题诊断“这是问题:[描述],代码如下,原因是什么?”Bug定位
示例驱动“函数输入[X]应输出[Y],请实现”功能开发
分步执行“逐行分析这个函数,变量值如何变化?”逻辑调试
约束限定“请避免[X],使用[Y],优化[Z]”符合项目规范

常见误区与解决方案

1. 信息过载 ❌ 一次性要求解决多个复杂问题 ✅ 分步骤逐个解决

2. 信息不足 ❌ “修复我的代码” ✅ 提供错误信息、预期行为、相关代码

3. 目标模糊 ❌ “让代码更好” ✅ “提高可读性并减少内存使用”

代码审查提示模式

PHP
扮演资深技术架构师,对以下代码进行深度审查:

[代码内容]

审查维度:
1. 架构设计:是否符合SOLID原则?
2. 性能考量:有无性能瓶颈?
3. 安全性:是否存在安全漏洞?
4. 可维护性:代码是否易于理解和修改?

请提供具体问题、建议和改进示例。

最佳实践建议

持续迭代改进

PHP
第一轮:获得基本解决方案
第二轮:优化和改进
第三轮:添加错误处理和测试

验证和学习

  • 总是验证AI生成的代码
  • 运行测试确保功能正确
  • 分析AI的解决思路
  • 记录有效的提示模式

Schlussbemerkungen

提示工程是一门实用技能,需要在实践中不断磨练。通过清晰的沟通、具体的要求和耐心的迭代,你能够显著提升编程效率。记住,AI助手就像一位聪明但需要明确指导的合作伙伴,良好的提示能让它成为你编程路上的得力助手。

Weitere Produkte finden Sie unter

Siehe mehr unter

ShirtAI - Durchdringende Intelligenz Das AIGC Big Model: der Beginn einer Ära der doppelten Revolution in Technik und Wissenschaft - Penetrating Intelligence
1:1 Wiederherstellung von Claude und GPT Offizielle Website - AI Cloud Native Live Match App Global HD Sports Viewing Player (empfohlen) - Blueshirt Technology
Transitdienst auf der Grundlage der offiziellen API - GPTMeta API Hilfe, kann jemand von Ihnen Tipps geben, wie man Fragen auf GPT stellt? - Wissen
Global Virtual Goods Digital Store - Global SmarTone (Feng Ling Ge) Wie leistungsfähig ist Claude airtfacts, dass GPT sofort nicht mehr gut riecht? -BeepBeep

Werbefläche

Transit Agent Service basierend auf offiziellen APIs

In dieser Ära der Offenheit und des Teilens führt OpenAI eine Revolution in der künstlichen Intelligenz an. Jetzt geben wir der Welt bekannt, dass wir alle Modelle von OpenAI vollständig unterstützt haben, z.B. GPT-4-ALL, GPT-4-multimodal, GPT-4-gizmo-*, etc. sowie eine Vielzahl von selbstentwickelten großen Modellen. Am aufregendsten ist, dass wir das leistungsfähigere und einflussreichere GPT-4o in die Welt eingeführt haben!

Website-Navigation

Abb. Anfang
Andocken von Dritten
Konsolen
Anweisungen für den Gebrauch
Online-Überwachung

Kontakt

公众号二维码

öffentliche Nummer

企业合作二维码

Zusammenarbeit Wechat

Copyright © 2021-2024 Alle Rechte vorbehalten 2024 | GPTMeta API