6

私は過去数か月間ReSharperを使用してきましたが、宣伝はさておき、ReSharperなしでコーディングすることはできません。私は出血している「何がうまくいかなかったのか」の端に住むのが大好きなので、最新のReSharper4.5ナイトリービルドで運試しをすることにしました。それはすべていいです。

ただし、usingディレクティブのグループ化形式が変更されていることに気付き、どちらが一般的な標準に近いかを知りたいと思いました。

[年]

#region Using directives
using System.X;
using System.Y;
using System.Z;
using System.A;
#region
namespace X { ... }

[新着]

namespace X {
#region Using directives
using System.X;
using System.Y;
using System.Z;
using System.A;
#region
...
}

遅延読み込みの参照以外に、特別な目的はありますか?(ScottHanselmanのこの@http://www.hanselman.com/blog/BackToBasicsDoNamespaceUsingDirectivesAffectAssemblyLoading.aspxに関する見解を読んでください

ありがとう;

4

3 に答える 3

7

Scott が自身の投稿で発見したように、これら 2 つのケースに実行時間の違いはありません。したがって、参照を遅延読み込みする目的には使用できません。

Scott のブログのコメントを最後まで読むと、この噂を Scott に伝えた開発者 (Mike Brown) が、これについては聞いただけで、自分でテストしたわけではないと言っていることがわかります。

そうは言っても、名前空間内に型のエイリアスを設定し、同じ名前の別の型が名前空間に定義されている場合、 using ディレクティブを配置する場所によってコンパイラ エラーが発生する可能性があります。もちろん、それは実行時の違いではありません。

最後に、MS コーディング ガイドラインでは、ReSharper 4.5 と同じようにそれを行うように指示されていると思います。しかし、「MS がそう言っているから」という理由でこのルールにやみくもに従うのはばかげています。

  1. メリットがないことが証明されています。
  2. あなたのチーム (またはあなたの) の通常のコーディング スタイルは、まったく異なる可能性があります。
于 2008-12-30T06:01:11.020 に答える
1

まあ、いつもは主観です。:)しかし、私にとっては、通常は「古い」方法です。

于 2008-12-30T06:11:40.610 に答える
0

ああ、悪い。検索してもその質問はありませんでした。MSがそう言っているので、それを行うのはばかげていることは知っていますが、一般的に、これに対する「通常の」アプローチは何ですか?

私は ReSharper のコード クリーンアップを頻繁に使用することで知られているので、正直なところ疑問に思っています。

于 2008-12-30T06:05:02.853 に答える