ReSharper 2025.3 の新機能

ReSharper 2025.3 は Visual Studio 2026 に対応すると期待されています。また、拡張メンバー、拡張演算子、ユーザー定義の複合代入演算子などの C# 14 の機能に対する包括的な同日サポートに加えて、コンパイラーの最新の変更に合わせた更新を提供します。 このリリースでは、Out-of-Process(アウトプロセス)モードに対する大規模な改善も行われています。 起動が高速化し、Visual Studio との連携が円滑化され、ソリューション全体の解析パフォーマンスが大幅に改善されているのに気付くはずです。

Visual Studio 2026 との互換性

ReSharper 2025.3 は Visual Studio 2026 Insiders プレビュー版との互換性が広範にテストされており、最終リリースとスムーズに連携すると期待されています。 正式な Visual Studio 2026 ビルドに関する包括的な品質保証認定は、そのビルドが一般公開された後すぐに行われる予定です。

また、Visual Studio 2026 では ReSharper の外観が新しくなっていることにも気が付くことでしょう。 ポップアップやドロップダウンメニュー、およびいくつかのツールウィンドウ(Find Results(結果検索)、 Unit Tests(ユニットテスト)など)のデザインを改良し、進化し続ける Visual Studio UI にふさわしい、より洗練された外観にしました。

ReSharper を Visual Studio 2026 に移行する方法については、こちらをご覧ください。

C# のサポート

C# 14 の拡張メンバー

C# 14 の拡張機能のサポートを最終的に調整し、従来からサポートされていたメソッドとプロパティに加えて、拡張演算子もサポートするようにしました。 また、Change Signature(シグネチャーの変更)、Convert Method to Property(メソッドをプロパティに変換)、Make Static(static にする)、Safe Delete(安全な削除)など、提供されているすべてのリファクタリングも拡張メンバーで機能するように更新されました。

その他多数の ReSharper の機能も新しい種類の拡張メンバーに対応しています。

  • 使用箇所のコード解析がコード内で使用されていない拡張メンバーを正しく識別し、ハイライトするようになりました。
  • オブジェクトイニシャライザーやパターンマッチングを使用している場合など、より多くの場面で拡張メンバーがインポート補完でサポートされるようになりました。
  • Optimize 'using' directives('using' ディレクティブの最適化)機能は拡張メンバーの新しい記述方法を考慮し、拡張メンバーにディレクトリのメンバーが必要な場合には using ディレクティブの除去を提案しません。
  • Call Hierarchy(呼び出し階層)と Value Tracking(値の追跡)機能が新しい拡張メンバーをサポートするようになり、拡張メソッドとプロパティに関する信頼性の高い呼び出しグラフとデータフローの探索が可能になりました。

これだけではなく、従来の拡張メソッドと新しい構文間をスムーズかつ交互に切り替えやすくするための新しいインスペクション、クイックフィックス、およびコンテキストアクションも提供されています。

C# 14 に関する全般的な改善点

ReSharper 2025.3 では以下の重要な機能強化によって C# 14 のサポートの範囲を拡大され、改良されています。

  • ユーザー定義の複合代入演算子が完全にサポートされるようになりました。
  • field キーワードのサポートがコンパイラーの最近の更新に合わせて調整されました。
  • Enumerable.Reverse が span と使用される際の破壊的変更を新しいインスペクションで検出できるようになりました。

ReSharper と Rider での C# 14 の機能に関する最新のサポート状況については、ブログをお読みください。

Generate try-catch block(try-catch ブロックの生成)コンテキストアクション

このリリースでは、XML ドキュメントに基づいてメソッド呼び出しを囲む try-catch ブロックを自動的に生成する新しいコンテキストアクションが導入されています。

メソッドの宣言にスローされうる例外の型を指定した <exception> タグが含まれている場合、ReSharper がこの情報を検知し、呼び出した際に適切な try-catch 構造で呼び出しを囲むコンテキストアクションを提供するようになりました。

パフォーマンス

起動と終了の改善

ReSharper 2025.3 では、In-Process(インプロセス)モードのパフォーマンスが 2025.2 リリースよりも著しく改善されています。

大規模なソリューションを使用した内部テストでは、起動とソリューション全体のロード時間が約 15% 改善し、それと同時に UI の無応答時間が約 50% 削減されました。

終了時間も 30 秒から 10 秒へと大幅に改善されており、66% 短縮されています。

Out-of-Process(アウトプロセス)モードの改善

ReSharper 2025.3 では引き続き Out-of-Process(OOP、アウトプロセス)モードの改良が行われており、Visual Studio における安定性と全体的な応答性が改善されています。 このリリースでの主な改善点には以下が含まれます。

  • エディターと ReSharper のポップアップを切り替える際に発生していたフリーズやフォーカスに関連する問題が削減されました。
  • Peek Definition などのプレビューアクションのサポートが提供されるようになりました。
  • Navigate to: Object Browser(移動: オブジェクトブラウザー)で .NET アセンブリやメタデータの探索を円滑に行えるようになりました。
  • パッケージ管理タスク用の NuGet ブラウザーの操作が復元されました。

OOP モードはデフォルトでオフになっています。 オンに切り替えるには、ReSharper の Options(オプション)| Environment(環境)| Products & Features(製品と機能)に移動し、Run ReSharper in separate process(ReSharper を別のプロセスで実行する)オプションを選択してください。

C# の Find Usages(使用箇所の検索)のパフォーマンス改善

C# における Find Usages(使用箇所の検索)のパフォーマンスを最適化しました。 この最大の改善は、言語インジェクションに関連する不要な作業を省略することで実現されています。 また、対象を絞ったキャッシュ処理やその他の内部調整も導入しています。 Find Usages(使用箇所の検索)は Rename(名前の変更)や Change Signature(シグネチャーの変更)などの多くのリファクタリングの基盤であるため、それらのプロセスも高速化されています。

ReSharper Build のパフォーマンス

2025.3 で実装された新しいアルゴリズムにより、ReSharper 独自のビルドシステムによる増分コンパイル解析の実行速度が向上し、メモリ使用量が大幅に削減されました。 その結果、ビルド時間が若干短縮され、ビルドプロセス以降の IDE プロセスの応答性が向上します。

コールドスタート時の SWA の提供を迅速化

ソリューション全体解析(SWA)を開いた後に使用できるまでの時間が短縮されました。また、起動時の Visual Studio の応答性も改善されました。 この改善は、ReSharper がキャッシュを構築すると同時に変更された依存関係を処理することで実現しています。

C++ のサポート

ReSharper C++ 2025.3 では C++26 のサポートをさらに前進させ、パックへのインデックスアクセス、展開ステートメント、構造化バインディング内のパック、契約などの最新の言語標準の主な機能がサポートされています。 また、コード解析に使用される constexpr 評価エンジンの改善や、constexpr 評価の失敗を検出して詳細な評価トレースを表示する新しいインスペクションの追加も行われています。

このリリースではプロジェクトの初期化とアセットのスキャン処理を最適化することで、Unreal Engine プロジェクトのウォームスタートも大幅に高速化されています。 当社のテストでは、IDE が起動した後よりも最大で 30% 早く有効なファイルのコード解析が完了しています。 さらに、ソリューションを開いた後、すべてのアセットファイルのインデックス作成が終了するのを待たずに即座に編集を開始できるようにもなりました。

C++ 関連の更新の詳細については、ReSharper C++ 2025.3 の新機能ページをご覧ください。

その他

ReSharper が Open VSX Registry に掲載されました

VS Code 向け ReSharper が Open VSX Registry で提供されるようになりました。そのため、Cursor、Windsurf、VSCodium、およびその他の VS Code 対応エディターを使用する開発者は、ReSharper を検索してインストールし、エディター内で更新を取得できるようになりました。もう .vsix を手動でダウンロードしたり、リリースを見逃したりすることはありません。

詳細

TeamCity 拡張機能が復活しました

TeamCity 拡張機能を CI ワークフローで使用しているチームからのフィードバックに応える形で復活させ、もう一度 dotUltimate インストーラーに含めることになりました。

開発環境におけるこの統合の重要性をお伝えいただいた皆様に心よりお礼申し上げます。 その他のご質問やコメントがございましたら、こちらのチケットにご入力ください。

コマンドラインツール

InspectCode CLT で --stdout オプションを使用して標準出力に結果を直接書き込めるようになりました。これにより、自動化と CI 統合がこれまで以上に簡単になりました。