ReSharper 2021.1 ヘルプ

プロファイル

ReSharper | オプション | コード編集 | コードのクリーンアップ | プロファイル

ReSharper オプションのこのページでは、カスタムクリーンアッププロファイルを管理および構成したり、サイレントコードクリーンアップにクリーンアッププロファイルを割り当てたりすることができます。2 つのデフォルトプロファイル(フルクリーンアップ構文スタイルの再フォーマットと適用、およびコードの再フォーマット)もここに表示されます。変更することはできませんが、複製して新しいカスタムプロファイルを作成することはできます。

ツールバーコントロール

選択したクリーンアッププロファイルを構成するには、以下のコントロールを使用します。

Themed icon code cleanup option page screen gray デフォルトとして設定 このボタンをクリックして、選択したプロファイルをサイレントクリーンアップに使用します。サイレントクリーンアップに使用されるプロファイルには、Themed icon code cleanup option page screen gray アイコンが付いています。
Themed icon duplicate screen gray 複製 このボタンをクリックして、選択したプロファイルのコピーを作成します。デフォルト設定がある場合は、デフォルトのクリーンアッププロファイルの 1 つを複製して、カスタムクリーンアッププロファイルを作成する必要があります。新しいプロファイルが作成されるとすぐに、編集モードで開き、そこでクリーンアップタスクのリストを構成できます。
Themed icon behaivior screen gray 構成 このボタンをクリックして、選択したカスタムプロファイルの編集モードを有効にします。デフォルトのプロファイル(フルクリーンアップ構文スタイルの再フォーマットと適用、およびコードの再フォーマット)は編集できないことに注意してください。
Themed icon edit screen gray 名前変更 このボタンをクリックして、選択したカスタムプロファイルの名前を変更します。デフォルトのプロファイル(フルクリーンアップ構文スタイルの再フォーマットと適用、およびコードの再フォーマット)は名前を変更できないことに注意してください。
Themed icon remove screen gray 除去 このボタンをクリックして、選択したカスタムプロファイルを削除します。デフォルトのプロファイル(完全クリーンアップ構文スタイルの再フォーマットと適用、およびコードの再フォーマット)は削除できないことに注意してください。
Themed icon success screen gray 終了 このボタンをクリックして編集モードを終了し、選択したプロファイルのプレビューに戻ります。保存をクリックしない限り、変更は適用されないことに注意してください。

選択したプロファイルのコードクリーンアップタスク

これらのタスクは、選択したカスタムクリーンアッププロファイルの編集モード( Themed icon behaivior screen gray 構成)を切り替えると構成可能になります。最初は、カスタムプロファイルはなく、デフォルトプロファイルのタスクは編集できません。 Themed icon duplicate screen gray 複製をクリックして、デフォルトプロファイルの 1 つの編集可能なコピーを作成し、そのタスクを編集できます。

C#

ファイルレイアウトを適用する ReSharper オプション(Alt+R, O)のコード編集 | C# | ファイルレイアウトページで構成可能なルールに従って、ファイル内のタイプメンバーを並べ替えます。詳細については、ファイルとタイプのレイアウトパターンを使用してメンバーを再配置するを参照してください。
ファイルヘッダーを更新する ReSharper オプションのコード編集 | ファイルヘッダーテキストページで設定できるファイルヘッダーコメントを挿入または更新します。詳細は、ファイルヘッダースタイルを参照してください。
構文スタイル
'var' スタイルを適用 クリーンアップ中に 'var' 用のルールを適用します。ルールは、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成可能です。
型には明示的または暗黙的な修飾子の定義を使用する タイプ修飾子のルールを適用します。internal 修飾子を明示的に使用しないかどうか。ルールは、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成可能です。詳細については、コードの構文スタイル: 修飾子を参照してください。
型メンバーに明示的または暗黙的な修飾子定義を使用する タイプメンバー修飾子にルールを適用します。private 修飾子を明示的に使用しないかどうか。ルールは、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成可能です。詳細については、コードの構文スタイル: 修飾子を参照してください。
修飾子をソート タイプ / メンバー修飾子の優先順序を適用します。ルールは、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成可能です。詳細については、コードの構文スタイル: 修飾子を参照してください。
引数のスタイルを適用する(named | 位置) 特定の型のパラメーターの名前付き / 位置引数の設定を適用します。設定は、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成できます。詳細については、コードの構文スタイル: 名前付き / 位置引数を参照してください。
冗長なカッコを除去 ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されている場合に、冗長なオプションの括弧を削除します。詳細については、コードの構文スタイル: オプションの括弧を参照してください。
オペレーションの優先順位を明示的に指定する括弧を追加する オプションの括弧を追加して、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定された場合の操作の優先順位を明確にします。詳細については、コードの構文スタイル: オプションの括弧を参照してください。
シングルステートメントの周囲に波括弧を追加 / 削除する ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されているように、単一のネストされたステートメントを囲むオプションの中括弧を追加または削除します。詳細については、コードの構文スタイル: 1 つのネストされた文に対する波括弧を参照してください。
アライメント属性 ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されている複数の属性にルールを適用します。詳細については、コードの構文スタイル: 複数の属性を参照してください。
コードボディスタイルを適用する ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されているように、タイプメンバーの本体(式本体 | ステートメント本体)に環境設定を適用します。詳細については、コードの構文スタイル: タイプメンバーのボディを参照してください。
末尾のコンマを配置する ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されているように、複数のアイテムと同様の構成(オブジェクト、配列、コレクション初期化子、列挙型と switch 式)を使用した宣言の末尾のコンマの設定を適用します。詳細については、コードの構文スタイル: 末尾のコンマを参照してください。
オブジェクト作成スタイルを適用します(「new()」と「新しい T()」)ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されているように、C# 9.0 以降でターゲット型の new 演算子を使用するための環境設定を適用します。詳細については、コードの構文スタイル: オブジェクトの作成(「new()」と「新しい T()」)を参照してください。
デフォルト値スタイルを適用します('default' vs'default(T) ')ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで指定されているように、デフォルト値式でオプションの型指定を使用するための環境設定を適用します。詳細については、コードの構文スタイル: デフォルト値の式('default' と 'default(T)')を参照してください。
コードの冗長性を削除する

ReSharper オプション(Alt+R, O)のコードインスペクション | インスペクション重大度ページのほとんどの言語のコードの冗長性カテゴリで、ReSharper は、コードインスペクションに関連付けられている 50 以上の冗長性をリストします。それらのいくつかは特別な注意を必要とし、バッチモードでは処理できません。これにより、コードクリーンアップに約 30 の冗長性が残り、クリーンアッププロファイルでコードの冗長性を削除するを選択するたびに自動的に削除できます。
具体的には、コードのクリーンアップ:

  • 除去:

    • 冗長な空のコンストラクター。

    • 列挙型の明示的な整数型指定子。

    • for ステートメントの true 指定子。

    • 冗長な型キャスト。

    • 引数のない属性の括弧は冗長です。

    • 引数のない基本クラスコンストラクターへの明示的な呼び出し。

    • 冗長なブール比較。

    • 単一の式を持つコレクション初期化子からの冗長な波括弧。

    • 冗長明示的デリゲート作成式。

    • オブジェクト / コレクション初期化子からの空の引数リスト。

    • 冗長な new キーワード。

    • 1 つの型が 1 つの型を持つ型宣言の冗長 partial 修飾子。

    • 冗長な unsafe コンテキストとステートメント。

    • 冗長な object.ToString() 呼び出し(たとえば、文字列との連結または string.Format() 呼び出しの引数として)。

    • 冗長 string.ToCharArray() コール。

    • 引数型の冗長な指定。

    • メソッド本体でパラメーターが使用されていない匿名メソッドのシグニチャ。

    • 参照されていないラベル。

    • 冗長フィールド初期化子。

    • 匿名型のプロパティの冗長な明示的な名前。

    • 値の型が暗黙的に nullable に変換可能な冗長な nullable 型。

  • 変換:

    • Nullable<T> から T? への短縮形の Nullable 型)。

    • 拡張メソッドが静的メソッドとして呼び出される拡張メソッド呼び出しに対する静的メソッド呼び出し。

    • 配列の型をイニシャライザから推定できるとき、暗黙的に型定義された配列作成式にします。

  • 修正点:

    • 型の静的メンバーに、その型の派生メンバーを介してアクセスする出現箇所が発生します。

可能であれば、自動プロパティを使用する 単純なプロパティと対応するバッキングフィールドを自動プロパティで置き換えます。詳細は、自動プロパティを使用するを参照してください。
可能であれば、フィールドを読み取り専用にする 宣言またはコンストラクターで割り当てられ、読み込み用途のみを持つフィールドに 'readonly' キーワードを追加します。詳細は、フィールドを読み取り専用にするを参照してください。
可能であれば、自動プロパティを取得専用にする コンストラクター / イニシャライザーから初期化され、書き込みの使用がない自動プロパティの冗長 set アクセサーを削除します。このタスクは C# 6.0 でのみ機能することに注意してください。デフォルトでは、ReSharper は、関連付けられたコンパイラーに基づいて C# バージョンを自動的に検出します。ただし、ターゲットの C# バージョンを明示的に指定することはできます。ソリューションエクスプローラーでプロジェクトを右クリックし、コンテキストメニューからプロジェクト項目のプロパティを編集するを選択して、C# 言語レベルセレクターを使用します。
修飾子の配置 資格のあるタイプメンバーにルールを適用します。ルールは、ReSharper オプションのコード編集 | C# | 構文スタイルページ(Alt+R, O)で構成可能です。詳細については、コードの構文スタイル: オプションのメンバー限定子を参照してください。
組み込み型参照を修正する 組み込みの型名(C# キーワードまたは CLR 型名)のルールを適用します。ルールは、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成可能です。詳細については、コードの構文スタイル: 組み込み型参照を参照してください。
使用箇所

以下の設定可能なオプションが含まれています。

  • 'using' ディレクティブを最適化する
    コード編集 | C# | 名前空間のインポートおよびコード編集 | C# | 構文スタイルオプションページで構成できるルールを実装することにより、未使用の名前空間インポートディレクティブを削除し、名前空間インポートディレクティブを並べ替えます。すべての System.* 名前空間が最初に配置され、ドットの後の 2 番目の単語でアルファベット順に並べ替えられます。次に、他のすべての名前空間がアルファベット順に続きます。詳細については、コードの構文スタイル: 名前空間のインポートを参照してください。

  • 領域で 'using' ディレクティブを利用する
    このチェックボックスが選択されている場合、すべての名前空間インポートディレクティブをラップするための新しい領域がクリーンアップ中に作成されます。

  • 領域名
    リージョン折り返し名前空間インポートディレクティブの名前を指定できます。

修飾された参照を短くする 名前空間をインポートし、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページで構成された設定を実装することにより、可能であれば完全修飾名を短い名前に置き換えます。
コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | C# | スタイルのフォーマットページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。
埋め込み XML ドキュメントコメントの再フォーマット ReSharper オプション(Alt+R, O)のコード編集 | XML 文書コメント | スタイルのフォーマットページで構成可能なオプションに従って、XML doc コメントを再フォーマットします。

ReSharper は次のようなプレーンコメントを再フォーマットしないことに注意してください。
// A plain single-line comment
または
/* A plain multi-line comment */

XAML

空のタグを縮小する タグ本文が空の場合、終了タグを削除します。
冗長な属性を削除する コンテキストで冗長な場合、FreezemodifiersnamespanUpdateSourceTriggerMode などの属性を削除します
冗長リソースを削除 使用されていないリソース参照を削除します
冗長なプロパティ setter を削除 次のプロパティの未使用の setter を削除します: propertyattachedstyle
冗長なネームスペースエイリアスを削除する クリーンアップのスコープ内のすべての冗長な名前空間エイリアスを削除します。冗長エイリアスもコードインスペクションで検出され、クイックフィックスで削除できます。
冗長な定義を削除する コンテキスト内で冗長である場合、定義を削除します
禁止されている属性を削除する コンテキストで禁止されている場合、namespan などの属性を削除します

XML

コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | XML | スタイルのフォーマットページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。

C++

C++ コードスタイルとコードの冗長性
  • 上書きする関数に 'override' 指定子を追加する

  • 必須の 'typename' および 'template' キーワードを追加してください

  • インクルードファイルパスのスラッシュを修正

  • 宣言と代入を結合する

  • 可能であれば、メンバー関数を 'const' にする

  • 可能であれば、メンバー関数を静的にする

  • 冗長な 'else' キーワードを除去

  • 冗長メンバー初期化子を削除する

  • 冗長なカッコを除去

  • 重複修飾子を削除する

  • 余分な指定子を削除する

  • 冗長なステートメントを削除

  • 重複した 'typename' と 'template' キーワードを削除する

  • 到達不能なコードを削除する

  • 未使用の #include ディレクティブを削除する

  • C スタイルのキャストを静的キャストに置き換えます

  • ローカル変数を const にする

  • ブール値のコンテキスト内の定数をブールリテラルに置き換える

  • 可能な場合、明示的なタイプを「auto」に置き換えます

  • if ステートメントを定数条件で 'if constexpr' に置き換えます

  • 接尾辞演算子を接頭辞バリアントで置き換える

  • スマートポインタコンストラクターを make 関数に置き換える

  • 可能であれば、throw 式を rethrow に置き換えてください。

  • ポインターコンテキストのゼロ値式を nullptr に置き換える

  • #include ディレクティブを並べ替える

  • メンバー初期化子を初期化の順にソートする

Clang-tidy 修正を適用する

このノードでは、Clang-Tidy チェックに従って適用されるすべての修正または特定の修正を選択できます。

ReSharper オプション(Alt+R, O)のコードインスペクション | インスペクション重大度ページで対応するインスペクションがオフになっている場合でも、選択された修正が適用されます。一度に多くのチェックを有効にする場合は注意してください。コードクリーンアップは、指定されたファイルに対して Clang-Tidy を 1 回だけ実行します。

コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | C++ | スタイルのフォーマットページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。
ファイルヘッダーを更新する ReSharper オプションのコード編集 | ファイルヘッダーテキストページで設定できるファイルヘッダーコメントを挿入または更新します。詳細は、ファイルヘッダースタイルを参照してください。

VB.NET

コードの冗長性を削除する C# 言語と同じように冗長コードを削除します
'import' ディレクティブを最適化する ReSharper オプションのコード編集 | Visual Basic .NET | 名前空間のインポートページで設定されたルールを実装する、未使用の名前空間インポートディレクティブを削除します。
修飾された参照を短くする 名前空間をインポートし、ReSharper オプション(Alt+R, O)のコード編集 | Visual Bascic.NET | 構文スタイルページで構成された設定を実装することにより、可能であれば完全修飾名を短い名前に置き換えます。
コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | VB.NET | 書式スタイルページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。
埋め込み XML ドキュメントコメントの再フォーマット ReSharper オプション(Alt+R, O)のコード編集 | XML 文書コメント | スタイルのフォーマットページで構成可能なオプションに従って、XML doc コメントを再フォーマットします。

ReSharper は次のようなプレーンコメントを再フォーマットしないことに注意してください。
// A plain single-line comment
または
/* A plain multi-line comment */

CSS

アルファベット順のプロパティ CSS プロパティをアルファベット順に並べ替えます。
コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | CSS | スタイルのフォーマットページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。

JavaScript のような言語

ステートメント終了の適用 JavaScript、TypeScript、JSON のステートメントの最後にオプションのセミコロン ; を追加します。

JavaScript

文字列リテラルの前後で引用符を正規化する 優先する引用スタイルを適用します: 単一引用符(')または二重引用符(")。この設定は、ReSharper オプション(Alt+R, O)のコード編集 | TypeScript | 構文スタイルページで構成できます。詳細については、引用スタイルを参照してください。
可能であれば 'var' を 'let' / 'const' に修正してください

let および const は、以下の場合にサポートされています。

  • JavaScript コードで、ターゲット JavaScript 言語レベルが ECMAScript 6 の場合(ReSharper オプション(Alt+R, O)のコード編集 | JavaScript | インスペクションページで選択できます)

  • TypeScript 1.4 では、プロジェクトプロパティでターゲット ECMAScript 6 が選択されている場合。

  • TypeScript 1.5 以降。

let/const を可能な限り最も内側のスコープに移動します function/compound ステートメントの外側で定義された変数を移動します。外側のスコープに他の使用箇所がない場合は、その使用箇所に近づきます。
文字列の連結をテンプレート文字列に変換する JavaScript コードでは、ターゲット JavaScript 言語レベルが ECMAScript 6(ReSharper オプション(Alt+R, O)のコード編集 | JavaScript | インスペクションページで選択できます)である場合、および TypeScript 1.4 以降では、このオプションは文字列の連結をテンプレート文字列(英語)に変換します。例:
var str1 = "Hello,"; var str2 = "Test: " + str1 + " World1";
変換されます
const str1 = "Hello, "; const str2 = `Test: ${str1} World1`;
コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | JavaScript | スタイルのフォーマットページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。
埋め込み XML ドキュメントコメントの再フォーマット ReSharper オプション(Alt+R, O)のコード編集 | XML 文書コメント | スタイルのフォーマットページで構成可能なオプションに従って、XML doc コメントを再フォーマットします。

ReSharper は次のようなプレーンコメントを再フォーマットしないことに注意してください。
// A plain single-line comment
または
/* A plain multi-line comment */

TypeScript

重複修飾子を削除する 冗長タイプ名修飾子を削除するには、このオプションを使用します。
'インポート' ステートメントを最適化する このオプションを使用して、ReSharper オプション(Alt+R, O)のコード編集 | TypeScript | インスペクションページで構成可能な設定に従って、冗長な「インポート」ステートメントまたは完全修飾名を削除します。
参照コメントを最適化する 冗長参照コメントを削除するには、このオプションを使用します。
「パブリック」プレゼンスをコードスタイルと同期させる このオプションを使用すると、ReSharper オプション(Alt+R, O)のコード編集 | TypeScript | インスペクションページで構成可能な設定に従って、明示的な「public」修飾子を追加または削除できます。
必要に応じて明示的な「任意の」型アノテーションを追加する このオプションを使用すると、ReSharper オプション(Alt+R, O)のコード編集 | TypeScript | インスペクションページで構成可能な設定に従って、明示的な「any」アノテーションをタイプに追加できます。
タイプアノテーションの存在をコードスタイルと同期させる このオプションを使用すると、ReSharper オプション(Alt+R, O)のコード編集 | TypeScript | インスペクションページで構成可能な設定に従って、明示的 / 暗黙的な入力を強制できます。
必要に応じて 'require' に相対パススタイルを修正する require キーワードの相対パスに 'require' の相対ファイル参照スタイルコードスタイル設定を適用します。例: import X = require("file1") または import X = require("./file1") この設定は、ReSharper オプション(Alt+R, O)のコード編集 | TypeScript | インスペクションページで構成できます。
アサーションの代わりに 'as' を使用する 置換
var bar = <string> foo;
with
var bar = foo as string;
これは JSX 構文のあいまいさを避けるために推奨される方法です。

HTML

コードの整形 ReSharper オプション(Alt+R, O)のコード編集 | HTML | スタイルのフォーマットページで構成できる設定に従って、コードを再フォーマットします。詳細については、コードフォーマットルールの管理と適用を参照してください。
属性値を引用符で正規化する ReSharper オプションのコード編集 | HTML | 構文スタイルページで構成可能な一重引用符(')または二重引用符(")の優先引用符スタイルを適用します。

ASP.NET

@Register ディレクティブを最適化する 未使用の @Register ディレクティブを削除します。

関連ページ:

コードのクリーンアップ | ReSharper

ReSharper を使用すると、フォーマットやその他のコードスタイル設定を一括モードで適用して、1 つ以上のファイル、プロジェクト、またはソリューション全体でコードスタイル違反を即座に排除できます。コードクリーンアッププロファイル:コードのクリーンアップには、ニーズに応じてさまざまな場合に適用できるさまざまな設定(プロファイル)があります。提供時の状態で使用可能な 3 つのデフォルトプロファイルがあります。コードのフォーマットのみを適用するビルトイン: コードの整形、コードのフォーマットとコ...

コードインスペクション設定の構成 | ReSharper

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

コードのクリーンアップダイアログ | ReSharper

コードのクリーンアップダイアログでは、利用可能なコードクリーンアッププロファイルを使用して、選択したスコープ内のコードをクリーンアップしたり、カスタムクリーンアッププロファイルを作成および編集したりできます。このダイアログでクリーンアッププロファイルを作成または変更する場合、変更はスマート保存ロジックを使用して保存されることに注意してください。変更を共有設定レイヤーに保存する必要がある場合は、ReSharper オプションのページで変更を行い、次へ保存をクリックしてから、目的の設定レイヤーを選択...

ファイルとタイプのレイアウトパターンを使用してメンバーを再配置する | ReSharper

ReSharper は、さまざまなパターンに従って C# ファイルのタイプおよびタイプメンバーを並べ替えることができます。パターンは、ファイル内のアイテムを並べ替えたり、指定された領域でラップしたりするときに評価される多くの条件と制約を記述することができます。レイアウトパターンの紹介:さまざまなコンテキストに適用されるように複数のレイアウトパターンを設定できます(たとえば、クラスとインターフェースにさまざまなパターンを設定できます)。パターンには 2 種類あります。ファイルパターン。すべての...

ファイルヘッダースタイル | ReSharper

コピーライト表示やその他の識別メッセージにファイルヘッダーを使用するのが一般的な方法です。ReSharper を使用すると、デフォルトのヘッダーテキストを構成して、ソリューションのコードファイルに自動的に挿入できます。ReSharper オプションまたは .editorconfig ファイル内のいずれかでファイルヘッダーを構成し、それをファイルテンプレートで作成された新しいファイルに追加し、コードクリーンアップを使用して既存のファイルに挿入できます。ReSharper オプションでファイルヘッダー...

コードの構文スタイル: 暗黙的 / 明示的な型指定 ('var' キーワード) | ReSharper

C# 3.0 で導入された暗黙的に型指定されたローカル変数(キーワードとも呼ばれます)を使用すると、多くのシナリオで読みやすさが向上するため、非常に人気があります。デフォルトでは、ReSharper はキーワードの使用も推奨していますが、その使用箇所の設定は柔軟に構成できます。たとえば、特定の場合やあらゆる場所で明示的な型を使用することを選択でき、ReSharper は設定を適用できます。C# 7.0 から、タプルを分解するときにローカル変数を宣言できます。このような宣言で使用する場合は、結合...