0

多くの拡張メソッドを含むクラスがある場合、それらの拡張メソッドの1つだけを使用している場合、それを「使用」するオーバーヘッドについて心配する必要がありますか?
この場合、おそらくすべての拡張メソッドを独自のクラスに配置する必要がありますか?または、単一の拡張メソッドを「使用」する方法があるのでしょうか。(例:using StringMethods.RecursiveJoin;?)

4

2 に答える 2

3

コンパイル時間がごくわずかに増加する可能性があります。また、実行時のオーバーヘッドはまったくありません。したがって、パフォーマンスの観点から心配する必要はありません。

私が心配するのは、デザインが良いかどうかだけです。これらのメソッドはすべて実際に拡張メソッドである必要がありますか、それとも通常の静的メソッドまたはインスタンスメソッドよりも優れているものがありますか?しかし、その質問には、拡張メソッドが何をするかを知らなければ答えることができません。

于 2012-05-24T08:41:15.480 に答える
0

「オーバーヘッド」の正確なポイントはよくわかりませんが、単一のメソッドを「インポート」することを考えている場合、それは不可能です。できることは、そのメソッドを別のクラスに移動/コピーすることです。そのクラスは、コードに「ローカライズされた」感覚を与える場合にのみ使用します (すべてのプロジェクトを確認せずにカットするのは困難です)。

これはコード レイアウト アーキテクチャの改善になりますが、メモリやパフォーマンスは改善されません。

于 2012-05-24T08:43:22.270 に答える