6

Resharperがそれ自体で賛成論をしているとき、どの人物がより信用できるかをどのように知っていますか?これらの引数は追加または削除する必要がありますか?

私はResharperを混乱させるいくつかのコードを見つけたと思います。(これは非常に稀なケースです - 一日使用した後、Resharperは液状パン以来の最高のものです。このコード行で

ICryptoTransform Encryptor = RijndaelCipher.CreateEncryptor(SecretKey.GetBytes(32), SecretKey.GetBytes(16)); 

ReSharperのはを "引数名 'rgbkey' を追加" し、その後

だから " 'rgbIV' を引数名を追加" に私に指示行は次のようになります。私は再びReSharperのを実行すると

ICryptoTransform Encryptor = RijndaelCipher.CreateEncryptor(rgbKey: SecretKey.GetBytes(32), rgbIV: SecretKey.GetBytes(16)); 

は、しかし、それは言う、

"冗長引数名の指定" - "引数名の指定の削除"(rgbkey)(さらにrgbIV)。

これは、いずれかの方法がうまく動作しそうです、しかし...

+2

Resharperは本当にどちらの方法も他のものよりも優れているとは言えません。あなたに何かを手助けするために必要なのは、あなたに「バルブ動作」を与えているだけです。 – vcsjones

答えて

6

明示的なパラメータの命名は、必須パラメータに任意であり、その両方の形式である「正しい」の質問はどのあなたが好きですのですか? vcsjones氏のように、Resharperはあなたの好みに合ったリファクタリングオプションを提供するだけです。

+1

そのような場合、私は彼らが一人で十分に良いと思うでしょう。道路の分岐点では、旅行者がほとんど同じではない旅行を取る場合、別の人は彼に言う "おい、あなたはこれがティムブッツーへの道であることを知らないのですか? (ロバートフロストとヨギへの謝罪 "もしあなたが道の分岐点に来たら、それを取る"と言います。 –

6

ReSharperの実は、そうでない

に私に語りました。 R#がユーザーに伝えるものは大きく2つあります。つまり、ユーザー、ユーザーはがほしいと思うものはとすると、より迅速に処理できるようになります。

最初の例:

var i = 4; 
i = 5; 
DoSomething(i); 

生成する4の割り当てクイックフィックスを提供し、左マージンに電球アイコンで検査、「割り当てが使用されていません」アクションを修正してください(割り当てを削除してください)。

第二の例:ifにカーソルを合わせ

if ((new Random()).Next() > 5) 
{ 
    DoSomething(); 
} 
else 
{ 
    DoSomethingElse(); 
} 

ifを反転する文脈アクションを提供し、左余白に鉛筆アイコンを生成します。 でなければならないと言っています。「おい、これをしたいのなら、このメニュー項目を選択して、私はあなたのためにやるよ」と言っている。

引数名を追加することは、2番目のカテゴリのコンテキストアクションです。オファーしたくない場合は、ReSharper | Options | Code Editing | C# | Context Actionsでオフにすることができます。コード検査では、ポップアップメニュー自体で検査の重大度を変更することができます。またはReSharper | Options | Code Isnpection | Inspection Severityにすべてを見ることができます。

個人的には私がこれまで使用していたとは思っていない(例えば "16進数に変換")と思っていますが、スピーディーなコーディングのために貴重なものがあります(?:if

関連する問題