14

VS2008には、Resharperと同様に、ディレクティブを使用してクリーンアップするための削除および並べ替え機能があることを知っています。コードが「クリーン」であり、将来存在しない可能性のある名前空間を参照する問題を取り除くこととは別に、使用ディレクティブの「クリーン」リストを維持することの利点は何ですか?

コードが少ない?コンパイル時間が速くなりますか?

4

8 に答える 8

18

常に必要な using ディレクティブのみを持ち、それらを常に適切に並べ替えると、コードの 2 つのバージョンを比較するときに、無関係な変更が表示されることはありません。

さらに、きちんとした一連の using ディレクティブがある場合、最初にコードを見ている人は、using ディレクティブを見るだけで、何が使用されるかについて大まかなアイデアを得ることができます。

于 2008-10-24T21:08:39.480 に答える
10

私にとっては、基本的にノイズを減らすことがすべてです (さらに、Resharper を満足させます!)。

コンパイル時間の改善は最小限になると思います。

于 2008-10-24T21:05:39.500 に答える
7
  1. ノイズが少ない。
  2. どのタイプが使用されるかについての明確な期待 (「私の UI レイヤーは System.Net に依存しています。うわー、なぜですか?」)
  3. よりクリーンな参照: ステートメントを使用する最小限のセットがある場合は、参照をクリーンアップできます。開発者が自分のプロジェクトに参照を投げ続けているのをよく見かけますが、不要になったときにそれらを削除することはありません。実際に参照を必要とするもの (および using ステートメントがカウントされるもの) がない場合は、参照をクリーンアップするのは簡単です。(なぜそれをしたいのですか? コンポーネントに分解された大規模なシステムでは、未使用の dep を排除することでビルドの依存関係を合理化します。)
于 2008-10-24T22:01:51.667 に答える
7

ランタイムへの影響はありません。純粋にコンパイル時です。以下に影響を与える可能性があります。

  1. 名前空間の衝突の可能性が低い
  2. コード ファイルの「ノイズ」が少ない
  3. ファイルで期待される名前空間と可能なタイプについて非常に明示的
  4. メニューを使用して未使用と並べ替えを削除すると、開発者間でステートメントを使用する際の一貫性が高まります。それを修正するためだけに愚かなチェックインの可能性が少なくなります。
于 2008-10-24T21:59:18.660 に答える
2

私にとっては、最初に using ステートメントのクリーンなリストがあると、予想される型をよく理解できます。

于 2008-10-24T21:05:57.863 に答える
2

数年前、ReSharper を (18 プロジェクト ソリューションに) 最初にインストールしたとき、コンパイル時間がかなり向上しました。それ以来、それはそれをきれいに保つことだけでした。

于 2008-10-24T21:07:35.707 に答える
0

コンパイル時間とパフォーマンスの利点について話すことはできませんが、using 宣言を最小限に抑えると、名前空間の衝突の可能性が低くなります。これは、複数のサードパーティ ライブラリを使用している場合に特に重要です。

于 2008-10-24T21:40:36.373 に答える
0

コンパイル時の違いが 1 つあります。参照を削除しても、コードに using ディレクティブが残っていると、コンパイラ エラーが発生します。したがって、using ディレクティブのクリーンなリストを作成すると、未使用の参照を削除するのが少し簡単になります。

通常、コンパイラは未使用の参照を削除しますが、コードに using がある場合にそれが機能するかどうかはわかりません。

于 2008-10-27T10:10:49.187 に答える