C# で非推奨の API をレポートおよび更新する
API を進化させるときは、遅かれ早かれ重大な変更を導入する必要があります。これに対処する従来の方法は、非推奨のタイプとメンバーを [Obsolete] 属性でマークし、属性のメッセージを使用して新しい API に移行する方法を説明することです。
JetBrains Fleet は、API ユーザーが古い API を見つけて新しい API に自動的に変換できる、より洗練されたソリューションを提供します。API 作成者は、廃止された型またはメンバーを JetBrains.Annotations の [CodeTemplate] 属性でマークする必要があります。これにより、古い API と一致する検索パターンとその置換パターンを指定できます。この属性は、対応するクイックフィックスを持つカスタムコードインスペクションとして機能します。
[CodeTemplateAttribute] は、C# コードを解析する他のすべての JetBrains 製品 (JetBrains Rider JetBrains ReSharper など) によって認識されます。
例を使用して、それがどのように機能するかを見てみましょう。
非推奨の IsTrue() メソッドに [CodeTemplate] 属性でアノテーションを付けましょう。
これで、JetBrains Fleet は MyAssert.IsTrue() のすべての使用箇所をレポートし、移行の修正を提案します。
![JetBrains Fleet: [CodeTemplate] 属性を使用して、非推奨の API の移行修正を提案する JetBrains Fleet: Using [CodeTemplate] attribute to suggest migration fixes for deprecated APIs](https://resources.jetbrains.com/help/img/fleet/1.48/CodeTemplateAttribute_example.png)
関連ページ:
スマートモード
JetBrains Fleet は、軽量テキストエディターとしても、インテリジェントなコードエディターとしても機能します。システムリソースを最適化するため、リソースを大量に消費する機能は必要な場合にのみ有効になります。スマートモードを有効にすると、個々のファイルまたは複数のファイルを含むフォルダーをシームレスに操作できます。スマートモードを有効にする右上隅にあるスマートモードのステータスアイコンをクリックします。表示されるポップアップで、「有効にする」をクリックします。必要なインデックス作成と準...
アノテーションを使用して C# のコードインスペクションを改善する
コード検査およびその他の多くの JetBrains Fleet 機能は、問題を検出し、改善の可能性を提案し、他の方法で役立つように、言語構造の動作を知ることに主に依存しています。ただし、この種の分析ではすべてを検出できるわけではありません。例: メソッドがフォーマットメソッドとして設計されている場合、メソッドの呼び出しに必要な引数が含まれていない場合、構造解析では潜在的な問題は見つかりません。このような場合や他の多くの場合、JetBrains Fleet のが非常に役立ちます。このフレームワーク...
C# 文字列リテラルのコード分析
システム文字列のフォーマット方法:JetBrains Fleet は、、などのすべての .NET 文字列フォーマットメソッドの書式文字列と引数を分析します。文字列フォーマットメソッドの使用では、JetBrains Fleet は書式プレースホルダーをハイライトし、キャレットが次のいずれかにあるときに、対応する引数を持つプレースホルダーを同期的にハイライトします。引数と形式プレースホルダーが一致しない場合 (引数が欠落していると実行時にが発生します)、JetBrains Fleet は欠落または...