ReSharper 2024.3の新機能

ReSharper 2024.3 では、params コレクション、partial プロパティ、新しい lock 型、field キーワードなどの C# 13 の機能に対する包括的なサポートが導入されました。 このアップデートではコードのクリーンアップがパフォーマンス改善と柔軟な整形オプションによって強化され、さらに正確な命名規則が追加されています。 複数行の To-do コメントとツールチップが色付けされるようになったため、コードの可読性が高まり、整理しやすくなっています。 C++ サポートの対象に Unreal Engine 開発の新機能が追加され、パフォーマンスと Clang との相互運用性も改善されています。

ダウンロード

無料 30 日間体験版をご利用可能です

C# のサポート

C# 13 関連の更新

最新リリースの ReSharper では、C#13 に関連する以下の最新機能のサポートが導入されています。

  • New params collections: The params keyword has been expanded to work with various collection types, allowing for more efficient method signatures without additional allocations.
  • Partial properties: Support has been added for partial properties, enabling you to spread property accessor implementations across multiple files, increasing flexibility and organization in your codebase.
  • New lock type: The new System.Threading.Lock type has been introduced for more efficient thread synchronization, improving performance over the traditional lock statement.
  • Overload resolution priority: A new attribute is available, providing better control of method overload resolution and allowing developers to prioritize which overload gets called in complex scenarios.
  • field keyword: The preview feature has been added to the field keyword. This gives direct access to the backing field of auto-properties, simplifying property logic.

ReSharper と Rider における C# 13 の機能のサポートについては、ブログをお読みください。

コードスタイルとクリーンアップ

コードのクリーンアップ

ReSharper 2024.3 ではより堅牢なパフォーマンスを得られるようにするため、コードのクリーンアップを一新しました。 問題を徹底的に解決し、アナライザーの精度を強化するため、範囲指定のクイックフィックスと同じエンジンを使用するようになりました。 ファイル処理を最適化するため、並列前処理も追加されています。 さらに、ファイルごとにコードのクリーンアッププロファイルを選択するか、特定のファイルのクリーンアップを省略するかを選択できるようになりました。

コードの整形

さらに柔軟性を高めるため、新しい整形オプションが導入されました。

  • 等価 = 演算子の折り返しを制御する新しいオプション。
  • 新しい Indent ‘break’ from ‘case’('case' の 'break' をインデントする)オプション。
  • 新しい Treat ‘case’ statements with ‘break’ as simple('break' ステートメントのある 'case' ステートメントを単純なステートメントとして処理する)オプション。

命名スタイル

命名規則をより正確に調整するための新しいオプションを 2 つ追加しました。

  • ローカル関数に Local functions with ‘async’('async' 付きのローカル関数)と Task-returning local functions (not ‘async’)(タスクを返すローカル関数 (非 'async'))の 2 つのオプションが備わりました。
  • 名前に async サフィックスが付いており、async 修飾子はついていないものの Task のような型を返すメソッドをサポートするため、メソッドに新しい Task-returning method (not ‘async’)(タスクを返すメソッド (非 'async'))オプションが追加されました。 これは async 修飾子の使用が許可されていないものの、実装では Task 型を返すインターフェースでメソッドを宣言する場合に役立ちます。

Code comments

複数行の To-do コメントのサポート

ReSharper 2024.3 では複数行の To-do コメントがサポートされ、後続行のインデントが付いたテキストを同じ To-do 項目の一部として処理できるようになりました。 This enhancement makes it easier to group related notes and tasks together in your codebase. このリリースでは複数行の To-do にコンテキストを追加できるようになったため、可読性が高まり、整理しやすくなっています。

また、To-do 項目に関連付けられた外部課題をインラインで確認できる Peek To-do link(To-do のリンク先を表示)(Ctrl+Shift+クリック)アクションが更新されました。 最新のウェブブラウザーエンジンを使用することで、より快適なレンダリングエクスペリエンスを提供できるようになりました。

ユーザーエクスペリエンス

ツールチップの色付け

このリリースでは、C# 関連のほぼすべてのエラー、警告、通知メッセージをレビューし、可能な箇所にテキストの色付けを導入しました。

より直感的に読み取れるようにするため、約 600 件のメッセージのツールチップが更新され、それに含まれるコード要素がエディターの使い慣れたカラースキームでハイライトされるようになりました。

C++ のサポート

ReSharper 2024.3 includes several improvements to C++ support:

  • Improved performance in large solutions.
  • The Move to Folder refactoring for C++ files.
  • Support for new C++23, C23, and GNU language features.
  • Unreal Engine 開発者向けの新しいコーディング支援機能。
  • Enhanced interoperability with Clang tooling.

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

デコンパイラー

IL code for assembly manifest

The IL Viewer tool window now provides IL code for assembly manifest, including:

  • Assembly and module info such as name, custom attributes, etc.
  • 参照先のアセンブリとモジュール。
  • 転送された型。
  • A list of files and resources.

This IL code is shown when the caret in the text editor is on an assembly or module attribute or somewhere inside an <AssemblyName>.cs file for external assemblies.

Support for primary constructors

プライマリコンストラクターを宣言するクラスを操作する際、デコンパイラーがコンストラクターとそのパラメーターを正しく表示するようになりました。デコンパイルされたコードから直接どのようにオブジェクトがインスタンス化されるかを全体的に把握できます。

ダウンロード

無料 30 日間体験版をご利用可能です