器库yueser.com

检查函数的隐藏副作用

收录 2026-11-02

读起来像纯函数,实际改了状态或发了请求。

下面是一个函数(或方法)。请:1)标出所有副作用(写状态、发网络请求、写文件、读全局配置、改参数);2)区分「调用方预期内」和「隐藏」的副作用;3)指出哪个副作用在并发或重试时会出问题;4)给一个拆分方案(纯计算 vs 副作用),以及改动影响面;5)提醒我测试里最容易因为副作用而变得不稳定的地方。不要重写整个函数。
本站原创

中文原文

使用建议

隐藏副作用是并发问题的常见源头。

可以这样改

  • 要求它先复述需求与约束,确认无误再写代码。
  • 让它给出最小改动 + 回滚方式,而不是整文件重写。

交付物(这次应拿到什么)

  • 可运行的最小改动(含直接可用的代码块)
  • 影响面清单:改了哪些文件、哪些调用点要跟着改

常见错法

  • 一次让它改十个文件,最后分不清哪处改动导致了新问题。
  • 只贴报错不贴代码和版本,拿到无法落地的修法。

输出验收(怎么判断能用)

  • 改动可运行、可回滚,且没顺手改无关代码。
  • 边界条件(空值、超长、并发)有说明或测试。

适用场景与注意

  • 适合:让它先复述需求和约束,再给最小可运行改动。
  • 注意:贴报错时同时给版本号与最小复现,否则它容易给出看似合理但不适配的写法。

同方向的其他提示词