プロジェクトの一環として、reekというコード品質ツールをしばらく実行します。このツールは基本的にコードの匂いを探して報告します。ここでは、params
のキーに複数回アクセスしようとするたびに、「Duplication」という匂いが出ることがわかりました(同じパラメータでメソッド呼び出しを2回行っているか、if条件などを複製しているかのように)。ただし、params
はHash
です。それらのキーに複数回アクセスすると、他のハッシュは重複の匂いを受けません。paramsをアクション内のローカル変数にキャッシュすると、それは役に立ちますか?
これはなぜですか? params
とは何ですか?ローカル変数にparams
をキャッシュして使用するのは意味がありますか?それが助けられるか、それとも同じでしょうか?または、ツールに何か問題がありますか?助けて!
ありがとうオマール。 Kevinが指摘したように、paramsはDTOの一種であり、他のオブジェクトとは異なり、Reekはそれをまだ知りません。 – Chirantan