コードの構文スタイル: オプションの括弧
多くの場合、式の括弧はオプションです。if ((a & b) | c)
など、操作の優先順位を明確にするのに役立つ場合もありますが、まったく役に立たず、デッドコードになるだけである場合もあります。var d = a + (b + c);
ReSharper は、オプションの括弧が役立つ場所を定義してから、必要に応じて冗長な括弧をクリーンアップするか、欠落している括弧を自動的に追加します。
ReSharper を使用すると、既存のコードに省略可能な括弧を配置したり、コード補完とコード生成機能を使用して新しいコードを生成したり、コードテンプレートを適用したり、リファクタリングを実行したりできます。
オプションの括弧の設定を強制する
デフォルトでは、ReSharper は操作の優先順位を明確にしていない括弧をハイライトし、削除できます。
同様に、明白でない操作の優先順位について通知し、オプションの括弧を追加してコードを読みやすくすることを提案します。
バルクモードでオプションの括弧の設定を強制する別のオプションは、コードのクリーンアップです。組み込みプロファイルフルクリーンアップまたは再フォーマットして構文スタイルを適用のいずれかを使用してコードクリーンアップを実行するか、以下で説明するように、特定のタスクのみを対象としたカスタムプロファイルを作成して実行できます。
コードのクリーンアップでオプションの括弧の設定を適用する
メインメニューから Alt+R O を押します。
を選択するか、クリーンアッププロファイル設定ページに移動します:
。新しいカスタムクリーンアッププロファイルを作成するセクションの説明に従って、新しいプロファイルを作成します。新しいプロファイルの選択したプロファイル設定セクションで、冗長なカッコを除去およびオペレーションの優先順位を明示的に指定する括弧を追加するチェックボックスをオンにします。
オプションダイアログで保存をクリックして変更を適用し、ReSharper に変更を保存する場所を選択させるか、保存先セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「resharper 設定の管理と共有」を参照してください。
設定を適用する範囲を選択します。
ファイル内の任意の場所にキャレットを配置して、ファイルに設定を適用します。
ソリューションエクスプローラー内の 1 つまたは複数の項目を選択して、これらのノードおよびその子項目にあるファイルに設定を適用します。
以下のいずれか 1 つを実行します:
Control+Alt+F を押すか、メインメニューから
を選択してください。テキストエディターの任意の場所を右クリックするか、選択項目を右クリックし、コンテキストメニューでコードのクリーンアップを選択します。
開いたコードのクリーンアップダイアログで、新しく作成したプロファイルを選択します。
実行をクリックします。ReSharper は、選択した範囲であなたの設定を強制します。
コードクリーンアップダイアログを開いてプロファイルを選択せずにオプションの括弧を配置したい場合は、作成したプロファイルをサイレントクリーンアップにバインドし、Control+Shift+Alt+F を押して実行できます。オプションの括弧スタイルの適用と他のコードスタイルタスクを組み合わせたカスタムクリーンアッププロファイルを作成することもできます。
オプションの括弧の設定を他のすべてのフォーマットおよび構文スタイルの規則とともに選択したコードブロック Alt+Enter に適用するには、 を選択します。
変更をファイルに保存するたびにオプションの括弧を配置して、編集が常にコードスタイルに準拠するようにすることができます。
変更を保存するときにオプションの括弧を自動的に配置する
メインメニューから Alt+R O を押します。
を選択するか、クリーンアッププロファイル設定ページに移動します:
。カスタムコードクリーンアッププロファイルを選択し、デフォルトに設定をクリックします(デフォルトプロファイルはサイレントクリーンアップにも使用されます)。
ファイルの保存時にクリーンアップを自動的に実行するを選択します。
オプションページに移動し、オプションで、ファイルマスクによって特定のファイルへの自動クリーンアップを制限できます。
ファイルの変更された部分のみを選択して、変更によって影響を受けるコードにクリーンアップが適用され、ファイル内の残りのコードが変更されないようにすることもできます。
ファイルの変更された部分のみをクリーンアップすることを選択した場合は、次のオプションを使用してこの動作を微調整できます。
部分的なクリーンアップが不可能な場合は完全なクリーンアップを実行する — このオプションに応じて、ReSharper はファイル全体をクリーンアップするか、ファイルの変更された部分のみにクリーンアップを制限できない場合はファイルをスキップします。
共有ファイルの保存時にクリーンアップを許可する — このオプションを使用して、共有プロジェクトのファイルなど、ソリューションに複数回含まれるファイルの部分的なクリーンアップを有効または無効にします。
ダイアログで保存をクリックして変更を適用し、ReSharper に変更を保存する場所を選択させるか、保存先セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「resharper 設定の管理と共有」を参照してください。
次回編集を終了してファイル (Ctrl+S) またはすべてのファイル (Ctrl+Shift+S) を保存すると、ReSharper は選択したプロファイルを使用して影響を受けるファイルをクリーンアップします。デフォルトのクリーンアッププロファイルが選択されていない場合、ReSharper はプロファイルの 1 つを選択するように求めます。
オプションの括弧の設定を構成する
オプションの括弧の設定は、レイヤーベースの設定のメカニズムを使用して保存されます。とりわけ、このメカニズムにより、さまざまなソリューションのさまざまな設定を維持したり、これらの設定を VCS に保持したり、チームメンバーと自動的に共有することができます。
ReSharper オプション Alt+R, O の ページに移動します。
丸括弧カテゴリでは、重複する括弧を削除するかどうか、および明示的な優先順位を持たない操作を考慮する必要があるかどうかを指定します。
右側の列の通知するセレクターを使用して、設定とは異なるコードインスペクション検出コードの重大度レベルを設定できます。
オプションダイアログで保存をクリックして変更を適用し、ReSharper に変更を保存する場所を選択させるか、保存先セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「resharper 設定の管理と共有」を参照してください。
関連ページ:
コード補完 (IntelliSense)
ReSharper は、高度な機能を備えた Visual Studio のネイティブコード補完(IntelliSense)を補完し、拡張します。例: あなたの入力に基づいて提案のリストを絞り込み、選択した型と拡張メソッドを自動的にインポートし、メソッド名を補完するときに括弧を追加し、型に応じて変数とフィールド名を提案するなど。ReSharper のコード補完の機能に慣れ親しむために、いくつかの実装の基本があります: デフォルトでは、ReSharper は Visual Studio のネイティブの...
コードのクリーンアップ
ReSharper を使用すると、フォーマットやその他のコードスタイル設定を一括モードで適用して、1 つ以上のファイル、プロジェクト、ソリューション全体でコードスタイル違反を即座に排除できます。コードクリーンアッププロファイル:コードのクリーンアップには、ニーズに応じてさまざまな場合に適用できるさまざまな設定(プロファイル)があります。提供時の状態で使用可能な 3 つのデフォルトプロファイルがあります。コードのフォーマットのみを適用するビルトイン: コードの整形、コードのフォーマットとコードの...
コードインスペクション設定を構成する
設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...
ReSharper 設定の管理と共有
ReSharper は、階層化された設定のメカニズムを使用して環境設定を保存するため、次の利点があります。さまざまなソリューションで異なる設定を行うことができます。環境設定のさまざまなサブセットを別の場所に保存し、特定のソリューションで作業するときに環境設定を組み合わせることができます。例: 記号のアイコンとチーム設定のコード形式を個人設定で保存し、これらの設定を自動的に組み合わせることができます。設定の特定のサブセットを VCS に保持することにより、チーム内の設定を同期できます。ReShar...
構文スタイル
コードスタイルの側面の 1 つは、互換性のある言語構文構造を使用する方法です。例: 以下の 2 つのメソッド定義は、コンパイラーの観点からは同じですが、構文構造の選択により、それらは異なって見えます。[Conditional(
フォーマットルールを適用する
編集および貼り付けられたコードの自動フォーマット:エディターでコードを入力すると、セミコロンを入力するとすぐに ReSharper によって式が再フォーマットされ、閉じ括弧を入力するとすぐにコードブロックが再フォーマットされます必要に応じて、ReSharper オプション Alt+R, O のページでこれらの種類の自動フォーマットを無効にすることができます。ReSharper では、コードを貼り付けるときにフォーマットルールを自動的に適用することもできます。デフォルトでは、貼り付けられたコードは完...