中間値を関数呼び出しに直接渡すのではなく、常にローカル変数に代入する理由

Linda Hamilton
リリース: 2024-09-27 06:22:29
オリジナル
991 人が閲覧しました

Why I always assign intermediate values to local variables instead of passing them directly to function calls

の代わりに

def do_something(a, b, c):
    return res_fn(
        fn(a, b),
        fn(b),
        c
    )
ログイン後にコピー

私はそうします:

def do_something(a, b, c):
    inter_1 = fn(a, b)
    inter_2 = fn(b)

    result = res_fn(inter_1, inter_2, c)
    return result
ログイン後にコピー

最初のバージョンははるかに短く、適切にフォーマットされていれば同様に読みやすくなります。

しかし、私が 2 番目のアプローチを好む理由は、すべての中間ステップがローカル変数に保存されるからです。

Sentry などの例外追跡ツール、さらには DEBUG=True が設定されている場合にポップアップ表示される Django のエラー ページでさえ、ローカル コンテキストをキャプチャします。さらに、デバッガーを使用して関数をステップ実行する必要がある場合、関数からステップアウトする前に正確な戻り値を確認できます。これが、最終結果を返す直前にローカル変数に保存する理由です。

いくつかの追加の変数割り当てと数行の追加のコード行によるパフォーマンスのコストは発生しますが、これによりデバッグがはるかに簡単になります。

以上が中間値を関数呼び出しに直接渡すのではなく、常にローカル変数に代入する理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!