Qikuyueser.com

関数の隠れた副作用を点検する

収録 2026-11-02

純粋関数に見えて、状態を変えたりリクエストを送っていたりします。

関数(メソッド)を渡します。1)副作用をすべて指摘(状態書き込み・ネットワーク・ファイル・グローバル設定の読み取り・引数変更);2)呼び出し側が期待するものと隠れたものの区別;3)並行実行やリトライで問題になるもの;4)純計算と副作用の分割案と影響範囲;5)副作用でテストが不安定になりやすい箇所。関数全体の書き直しはしない。
当サイトオリジナル

中国語の原文

開く ChatGPT
使い方

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

こう変えてみる

  • コードを書く前に要件と制約を復唱させる。
  • 全体書き換えではなく、最小の変更とロールバック方法を出させる。

得られる成果物

  • そのまま使える最小変更(コピー可能なコード)
  • 影響範囲:変更ファイルと追従が必要な呼び出し元

よくある失敗

  • 一度に十ファイル変更させ、何が原因か分からなくなる。
  • エラーだけ貼ってコードとバージョンを省くと、使えない修正が返る。

出力のチェック

  • 変更は動いて戻せて、無関係なコードに手を入れていない。
  • 境界条件(空・巨大・同時実行)が説明かテストで押さえられている。

使いどころと注意

  • 向いている用途:要件と制約を復唱させてから、最小限の動く変更を出させる。
  • 注意:エラーにはバージョンと最小再現を添える。無いと一見もっともらしいが合わない修正が返る。

同じ分野のプロンプト