15

私は作業中のプロジェクトで多くのメソッドを書いたり閲覧したりしていますoverloadsが、便利だと思う限りoptional parameter、デフォルト値を持つシンプルなものを使用すると、問題を回避して読みやすくすることができ、効率的なコードを書くことができると思います.

メソッドでこれらのパラメーターを使用すると、厄介な副作用が発生する可能性があると聞いています。

これらの副作用は何ですか?また、コードをクリーンに保つためにこれらのパラメーターを使用するリスクを冒す価値はありますか???

4

5 に答える 5

3

より読みやすく効率的なコードを作成していません。

まず、メソッド シグネチャが不当に長くなります。

第 2 に、オーバーロードは既定値を使用するためだけに存在するわけではありません。Convert クラスをざっと見てみると、それがわかるはずです。多くの場合、オーバーロードされたメソッドには異なる実行パスがあり、オーバーロードされていない単一のメソッドでスパゲッティ コードになります。

第 3 に、値が入力として使用されたかどうかを知る必要がある場合があります。使用していたデフォルト値と同じ値をユーザーがたまたま使用した場合、ユーザーがそれらの値を渡したかどうかをどのように知ることができますか?

于 2013-05-15T13:35:28.110 に答える