【模板1:拆分过长函数】
适用场景:单个函数超过30行,做了多件不同的事模板内容:
你是一位代码重构专家。 请对以下代码进行拆分过长函数重构。 代码:〖粘贴代码〗。 要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。 🌰实例:
输入:一个函数,先校验输入参数(5行),再查询数据库(3行),再计算折扣(10行),再生成订单(8行),最后发送邮件(6行)。
【模板2:消除重复代码】
适用场景:多个地方出现相似的逻辑块
模板内容:
你是一位代码重构专家。
请对以下代码进行消除重复代码重构,提取公共逻辑。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:三个函数内都有同样的“计算两数之和并判断是否大于100”的代码段。→ AI输出:提取成公共函数“计算并校验和”,三处调用替换为该函数。【模板3:简化复杂条件表达式】
适用场景:验证函数在非法输入或异常条件下是否按预期抛出错误
模板内容:
你是一位代码重构专家。
请对以下代码进行简化复杂条件表达式重构,使用早返回或查找表等方式。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:如果第一个数大于0并且第二个数大于0并且第三个数大于0则返回真,否则返回假(用三层嵌套判断实现)。→ AI输出:使用早返回:先检查第一个数是否不大于0,是则返回假;再检查第二个数是否不大于0,是则返回假;再检查第三个数是否不大于0,是则返回假;最后返回真。【模板4:合理命名变量与函数】
适用场景:变量名叫a、b、temp,函数名叫doSomething
模板内容:
你是一位代码重构专家。
请对以下代码中的变量和函数进行意图表达命名重构,使其名称清晰反映用途。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:一个函数接收原价和折扣率,内部先计算折扣金额(原价乘以0.1),然后返回原价减去折扣金额。函数名是一个字母,内部变量用单字母表示。→ AI输出:函数重命名为“计算折后价格”,内部变量改为“折扣金额”,参数改为“商品原价”和“折扣比率”。【模板5:类/模块的职责拆分】
适用场景:一个类里既有数据校验、又有日志记录、还有业务计算
模板内容:
你是一位代码重构专家。
请对以下代码进行类/模块的职责拆分重构,
按单一职责原则拆分为多个类或模块。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:一个订单处理类,包含字段校验、价格计算、数据保存、日志记录四个方法。→ AI输出:拆分为校验器、价格计算器、数据存储、日志记录四个独立的类,原订单类通过组合的方式调用它们。
【模板6:调整依赖方向(解耦)】
适用场景:高层模块直接依赖底层细节,换实现时到处改
模板内容:
你是一位代码重构专家。
请对以下代码进行依赖方向调整重构,引入抽象接口或依赖倒置。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:业务代码直接新建一个文件读取对象,然后调用该对象的读取文件方法。→ AI输出:引入文件读取的抽象接口,业务代码依赖该接口,具体的文件读取类实现该接口,并通过构造函数将实现注入到业务代码中。
【模板7:用设计模式优化丑陋代码】
适用场景:一堆条件分支创建不同对象,或算法常变模板内容:
你是一位代码重构专家。 请对以下代码进行设计模式优化重构, 识别适合的设计模式(如策略、工厂、模板方法)并应用。 代码:〖粘贴代码〗。 要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:根据传入的字符串类型(“A”“B”“C”)分别返回对应的处理器对象,用一连串的条件分支判断实现。→ AI输出:引入工厂模式,用字典(映射表)将类型字符串映射到对应的创建函数,一行代码即可返回正确的处理器实例。
你是一位代码重构专家。 请对以下代码进行设计模式优化重构, 识别适合的设计模式(如策略、工厂、模板方法)并应用。 代码:〖粘贴代码〗。 要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。 【模板8:移除无用代码/注释】
适用场景:大量被注释的代码或未使用的变量、函数模板内容:
你是一位代码重构专家。 请对以下代码进行移除无用代码与注释重构,删除被注释的代码段和无用定义。 代码:〖粘贴代码〗。 要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:函数内有一段被注释掉的旧实现代码(10行),顶部定义了一个从未用过的常量“最大重试次数”值为5。→ AI输出:删除注释掉的旧代码块和未使用的常量定义,保留干净可读的函数。
你是一位代码重构专家。 请对以下代码进行移除无用代码与注释重构,删除被注释的代码段和无用定义。 代码:〖粘贴代码〗。 要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。 【模板9:统一异常处理结构】
适用场景:有的地方返回错误码,有的抛异常,还有的地方吞掉错误
模板内容:你是一位代码重构专家。
请对以下代码进行统一异常处理结构重构,使用一致的异常捕获和传递方式。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:第一个函数返回错误码-1表示失败,第二个函数抛出自定义的异常,第三个函数用空的异常捕获块静默吞掉所有错误。→ AI输出:统一改为抛出自定义业务异常,在最外层统一捕获并处理异常。
你是一位代码重构专家。
请对以下代码进行统一异常处理结构重构,使用一致的异常捕获和传递方式。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
【模板10:优化数据结构与访问方式】
适用场景:到处用数组加循环查找,或用多层嵌套的map/对象
模板内容:你你是一位代码重构专家。
请对以下代码进行数据结构与访问方式优化重构,选择合适的集合类型或查询方式。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:用一个普通列表存储用户记录,每次需要根据用户编号查找时,都用循环遍历整个列表。→ AI输出:改用字典(哈希映射)结构,以用户编号为键存储对应的用户记录,查找效率从线性时间提升到常数时间。
你你是一位代码重构专家。
请对以下代码进行数据结构与访问方式优化重构,选择合适的集合类型或查询方式。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
【模板11:提取常量/配置项】
适用场景:代码中散布着魔法数字、硬编码字符串
模板内容:你是一位代码重构专家。
请对以下代码进行提取常量与配置项重构,
将所有魔法值和硬编码提取为常量或配置文件。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
你是一位代码重构专家。
请对以下代码进行提取常量与配置项重构,
将所有魔法值和硬编码提取为常量或配置文件。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
输入:代码中散布着3.14、60、24、100等数字,分别用于圆周率、超时秒数、最大重试次数、折扣百分比。→ AI输出:定义常量“圆周率”“默认超时秒数”“最大重试次数”“折扣百分比”,并在原位置引用这些常量。
【模板12:改善循环和集合操作的可读性】
适用场景:用传统for循环加下标做过滤、映射,代码冗长
模板内容:你是一位代码重构专家。
请对以下代码进行循环与集合操作可读性优化重构,
使用更声明式的风格(如管道、链式操作)。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
🌰实例:
输入:新建一个空集合,然后循环遍历原始集合,在循环中用条件判断筛选元素,把符合条件的元素逐个添加到新集合中。→ AI输出:使用链式操作调用“筛选”方法,一行代码完成过滤,直接得到新集合。
你是一位代码重构专家。
请对以下代码进行循环与集合操作可读性优化重构,
使用更声明式的风格(如管道、链式操作)。
代码:〖粘贴代码〗。
要求:保持原有行为不变,输出重构后的代码,并列出每一步的重构理由。
💡 使用技巧
在粘贴代码前,先给AI一句“这段代码想干什么”比如要重构一个叫“doThing”的函数,光贴代码AI可能误判意图。加一句“这个函数的作用是:根据用户等级和购买次数计算最终折扣率”,AI拆函数和命名时会更贴合真实业务逻辑。
让AI主动找出你没想到的坏味道在提示词末尾加上“除了我提到的重构手法,请再指出这段代码里另外2个潜在的设计问题”,AI可能会告诉你“这个类还承担了日志职责”“变量作用域过大”等你自己没留意的问题。
把“改完后的代码”再喂给AI做一致性校验重构最怕改出Bug。把原始代码和重构后代码一起粘贴,说“请验证两个版本对所有输入的行为是否一致,若不一致请列出差异”。实测能抓到不少漏改的逻辑分支。
分两步重构,避免AI一次改太多先让AI用【模板1】拆分成小函数,输出新代码后,再挑出其中某个小函数用【模板3】简化条件表达式。分两次改,AI生成的代码更稳,不容易出现“改完结构对但逻辑跑偏”的问题。
把团队代码规范写进提示词开头比如加一句“我们的规范:函数不超过20行,禁止三层以上嵌套,变量名要用完整单词”。AI会按你的规范输出重构结果,相当于给团队白嫖一个自动格式化+重构引擎。
用已有重构案例反向生成模板如果你手工重构过一段代码,把“改前”和“改后”都给AI,说“请总结出这次重构用的是哪种手法,并为我生成一个对应的提示词模板”。AI会帮你把经验沉淀成可复用的模板。
遇到“不敢动的老代码”先做防御性重构对核心老代码用【模板8】移除无用注释和死代码,用【模板11】提取魔法数字到常量,改完能跑再上其他重构手法。先清理再动手,风险小很多。
📢 结尾引导
✅ 关注本公众号,后台回复 “模板” 获取完整合集索引(包括代码审查、Bug修复、性能优化等分类)。✅ 文章持续更新,欢迎收藏并分享给需要的队友。✅ 下一期预告:《程序员AI提示词模板:日志分析篇》
让 AI 真正成为你的结对编程伙伴。
夜雨聆风