Rider の新機能

Rider の新機能

Rider 2020.2 は、Unity 統合におけるローカライゼーションマネージャーやシェーダーサポートなど、非常に要望の高い機能を提供します。ユニットテストランナーとデバッガー API を完全に作り直し、より速く、より強力で、より安定したものにしました。このリリースには、より優れた C# サポート、データブレークポイント、および GitHub プルリクエストの完全サポートも含まれています。

ダウンロード

30 日間の無料トライアル

デバッガー

New Debugger API

新しいデバッガー API

新しいリリースには、大幅に書き直された新しいデバッガー API が付属しています。これは UI からは目立ちませんが、より多くの機能を利用できるようになり、プラグインがデバッグプロセスにフックすることができるようになります。これには改善された超遅延値の計算が含まれ、より良い中断とカスタム値表現が含まれます。外部から気付くのは、デバッガーツールウィンドウにすべての変数の正しいアイコンが表示されることだけです。

Data breakpoints

データブレークポイント Windows のみ

データブレークポイントは、特定のオブジェクトのプロパティに集中する必要がある場合に役立ちます。通常は、何が変更されるかはわかっているが、コードベースのどこから変更が行われるかがわからないシナリオで使用します。これは、ウォッチツールウィンドウからアクセスでき、配列要素でも機能します。現在のプラットフォームの制限により、この機能は Windows 上の .NET Core 3+ でのみ使用できます。

さらに学習したい方に (英語)

Pin-To-Frame

フレームへピン留め

Rider 2020.2 では、フレームへピン留めを追加します。これにより、フレーム間で値を固定できます。関数のパラメーターを固定して、スタックフレームのリストで確認できます。再帰関数をデバッグするときに、さまざまな反復での値の状態を監視できます。

さらに学習したい方に (英語)

ローカライゼーションマネージャー

Localization Manager が Rider で利用可能になり、.NET アプリケーションまたは Web サイトのローカライズに役立ちます。ツールメニューを使用するか、.resx ファイルをダブルクリックしてアクセスできます。

プロジェクトのすべての .resx ファイルに含まれるすべて、または指定されたファイルの選択を 1 つのグリッドで表示できます。

ローカライズされた値がない、または使用されていないすべてのリソースを簡単に見つけることができます。

ローカライズされたリソースを追加、編集、名前変更、検索、使用状況の検索、安全に削除できます。

補完リストのカルチャの定義済みリストを使用して新しいカルチャをアプリケーションに簡単に追加したり、現在必要のないロケールを非表示にしたりできます。

グリッド全体を CSV 形式にエクスポートして翻訳者と共有し、ローカライゼーションマネージャーに最終バージョンをインポートできます。

グリッド内のリソースファイルから任意のエンティティのコメントを追加および編集できます。また、これらのコメントをエクスポートおよびインポートすることもできます。

ソリューション内の .resx ファイルの構造全体をさまざまなグループで表示できます。

GameDev

Unity

シェーダーのサポート

Rider 2020.2 は、Cg および HLSL シェーダーの多くの要望のあるサポートを追加します ! これには、構文のハイライト、コード補完、セマンティックエラーのハイライト、定義への移動、使用箇所の検索、リファクタリングなどが含まれます。

Rider は、マクロを含むシェーダーファイルの構造を完全に理解しており、マクロ定義に移動したり、コード内で直接展開したりできます。インクルードファイルが検出および解析され、インクルードファイルの Ctrl + Click を使用すると、そのファイルに直接移動できます。

Pausepoints

一時停止ポイント

新しいブレークポイントのご紹介 ! コードにブレークポイントを設定し、それを一時停止ポイントに変換します。デバッガーがブレークポイントに到達すると、Unity エディターはすぐに一時停止モードに切り替わり、インスペクターを使用してゲームの状態を表示できます。

これは、条件付きおよび従属ブレークポイントと組み合わせて使用すると、さらに強力なツールになります。詳細については、このブログ投稿(英語)を参照してください。

Burst analysis

バースト分析

バースト対応コードは、Unity アプリケーションのパフォーマンスを大幅に向上させることができますが、コードが実行できることには制約を課します。

Rider 2020.2 は、バーストコンテキスト内で呼び出されたすべてのコードのスマート分析を追加し、ボクシング、foreach または try / catch の使用、静的フィールドへの読み取り / 書き込みなど、不適切なコードの使用をハイライトします。

USB debugging for Apple devices

Apple デバイスの USB デバッグ

Rider は、スタンドアロンのデスクトッププレーヤー、モバイル、コンソールなど、ネットワークを介したプレーヤーのデバッグをすでに強力にサポートしています。

Rider 2020.2 は、Apple デバイス用の USB ベースのデバッグを導入しています(Android デバイス用の USB デバッグは、将来のリリースで計画されています)。

Bulk quick fixes

一括修正

ファイル、プロジェクト、ソリューション全体で実行できるすべてのクイックフィックスがアップグレードされ、実行できるようになりました。

冗長な Unity 属性を削除し、文字列リテラル比較を CompareTag に置き換え、オブジェクトの作成と親変換の設定を組み合わせてパフォーマンスを向上させるなど、Unity プロジェクト全体でワンクリックで実行できます。

Debugger value extensions

デバッガーの値の拡張

Rider のデバッガーは、Unity プロジェクトの追加のコンテキスト値を表示します。アクティブなシーン、子ゲームオブジェクト、接続されているすべてのコンポーネントに簡単にアクセスできます。

Rider は、四元数オイラー山括弧、ベクトルの完全精度値、動作の有効な状態など、特定のタイプの改善された要約情報も表示します。

Integrated UnityYamlMerge support

統合された UnityYamlMerge サポート

Rider は、統合バージョン管理操作を実行するときに、Unity のスマートマージ(英語)ツールを自動的に使用してアセットファイルをマージします。

より多くの機能

  • シーン、プレハブ、その他のアセットでコードを使用するためにテキストベースのアセットをインデックス化する際のメモリ使用量の大幅な削減とスループットの向上。
  • 一般的な Unity API 用語がカスタム辞書として Rider のスペルチェッカーに追加されました。
  • コードのクリーンアップで Unity タイプが認識されるようになり、シリアル化されたフィールドの順序が変更されなくなりました。これは、これらのフィールドを Unity インスペクターに表示するときに重要です。
  • その他のマイナーな機能と修正(英語)

Unreal Engine 早期プレビューの Rider

Rider for Unreal Engine

Unreal Engine でのゲーム開発に興味がありますか? Rider をスタンドアロンのオールインワンのユニバーサルゲーム開発 IDE にする方法の中で、Rider での Unreal Engine 開発の早期サポートを導入しました。

  • ReSharper C++ エンジンを搭載したネイティブ C++ サポート。
  • Unreal Engine プロジェクト用に最適化されたパフォーマンス。
  • Rider エディターの Unreal エディターおよびブループリント情報との統合。
  • UE リフレクションと RPC の理解、および UE 命名規則の実施。
  • HLSL および C#、JSON、uproject / uplugin ダイアレクトの取得。

早期アクセスプレビューは無料で使用できます。登録するだけで参加できます。

コード解析

Nullability コード分析で、より多くのケースが認識されるようになり、解体foreach サイクルを介して不正な nullability を追跡できるようになりました。また、対応するクイックフィックスも提供します。

コード分析で、API の JetBrains.Annotations 属性( NotNullCanBeNull の両方)が考慮されるようになりました。null 許容参照型が無効になっているコード(#nullable disable)でも同様です。

foreach to LINQ」および「LINQ to code」を変換するためのコンテキストアクションは、プロジェクトに System.Linq.Async NuGet パッケージがインストールされている場合、IAsyncEnumerable‹T› でも使用できます。

これで、適切なクイックフィックスを使用して、IEqualityComparer‹T› および IComparer‹T› 実装を簡単に生成できます。

コード分析では、実装またはオーバーライドされたメンバーの null 可能性を検証するときに、コンパイラーの注釈( AllowNullDisallowNull など)が考慮されるようになりました。

新しいインスペクションとクイックフィックスがあり、変数と戻り値の型が null 許容値を保持または返していない場合に、「null 許容不可」にします。

コード分析は、.editorconfig ファイルの dotnet_diagnostic ルールに従うことができるようになりました.editorconfig ファイルでインスペクションの重大度を指定します(例: dotnet_diagnostic.CS1058.severity = hint)。Rider はそれに応じてインスペクションを表示します。

このリリースでは、インターフェース機能のデフォルト実装のサポートが強化されています。コードエディターの左側のガターは、メソッドが実装またはオーバーライドされていることを示しています。リファクタリングとナビゲーションは、この C# 言語機能を認識しています。

インレイヒントが XAML コードで使用できるようになりました。マークアッププロパティ名と DataContext のヒント、およびマージンとパディングのヒントを提供します。これは、それらの順序を覚えたくない場合に便利です。

Alt + Enter メニューを介してソリューションの null 可能警告を ! クイックフィックスを無効にすることができます。

ユニットテスト

.NET フレームワークと .NET Core の両方のユニットテストランナーをゼロから再構築して、Visual Studio プロセスで実行される両方のランタイムで同じランナーを使用できるようにしました。ユニットテストの検出、実行、デバッグに関する多くの問題を解決するのに役立ち、.NET Core テストのユニットテスト階層を完全に制御できます。

新しい単体テストランナーでは、次の重要な改善が行われています。

  • NUnit の MSFakesxUnitMSTest v2 ユニットテストフレームワークの組み込みサポート。
  • NUnitxUnit、および MSTest v2TypeMock アイソレーターの組み込みサポート。
  • Visual Studio をインストールせずに MSTest v2 テストを実行できるようになりました。

Rider は、xUnit および NUnit フレームワークの .NET Core テストで DisplayName 属性をサポートするようになりました。

複数の単体テストステータスを同時に選択して、単体テストツリーでフィルタリングできます。複数のステータスを有効または無効にするには、Ctrl キーを押しながらクリックします。

検索またはターゲットフレームワークフィルターを適用して単体テストの総数とフィルター基準に一致するテストの数を表示する場合、各ステータスには 2 つの異なるカウンターがあります。

出力ウィンドウに ANSI エスケープコードのサポートを追加したため、必要に応じて単体テスト出力を色分けできます。

MSTest 単体テストのステータスが「Visual Studio インストールフォルダーが設定されていません」になった場合に、Alt + Enter メニューに設定ダイアログを開く新しいアクションがあります。

バージョン管理

GitHub プルリクエスト

GitHub プルリクエストの拡張サポートがついに登場 ! プルリクエストの参照、割り当て、管理、さらにはマージ、タイムラインとイン行コメントの表示、コメントとレビューの送信、変更の受け入れを行うことができます。

新しいサポートには以下が含まれます:

  • プルリクエストビューアーの新しいレイアウト。
  • タイムラインでのコミット前チェックの結果の表示。
  • レビューのサポート。
  • コメントとの相互作用。
  • IDE 内からのプルリクエストのマージ。

この新機能の詳細については、こちらのブログ投稿(英語)を参照してください。

その他の VCS 機能

GitHub プルリクエストの完全サポートに加えて、バージョン管理システムでは次の新機能を利用できます。

  • WSL2 にインストールされた Git のサポート。
  • ブランチを比較するアクションの結果の表示方法を改善しました。
  • Git ツールウィンドウのログタブで複数のローカルコミットを選択し、1 つにまとめることができます。このアクションは、右クリックのコンテキストメニューから実行できます。

NuGet

NuGet ツールウィンドウを使用して、新しい暗黙的にインストールされたパッケージセクションでソリューションまたはプロジェクトのすべての推移的なパッケージを表示できます。

暗黙のパッケージにカーソルを合わせると、暗黙のパッケージのバージョンと参照パッケージに関する情報を含むツールチップが表示されます。パッケージが複数のバージョンで参照されている場合、それらはすべて表示されます。

NuGet パッケージで Alt + Enter を右クリックまたは押すことで呼び出すことができる新しいコンテキストポップアップメニューを追加しました。ここから、単一の NuGet パッケージに関連するすべてのアクションにすばやくアクセスできます。たとえば、パッケージの更新または削除、パッケージをアセンブリエクスプローラーで開いて API を調べ、ファイルシステムエクスプローラーで明らかにする、関連する NuGet.org エントリに移動する、または依存コードを見つけます。

パッケージへの暗黙の参照パスを表示する新しい NuGet のクイックドキュメントアクションもあります。

パッケージの検索ボックスも更新されました。拡大鏡アイコンをクリックするか、Alt + Down Arrow を使用して、最近のパッケージ検索の履歴を開くことができます。

また、最も一般的に変更される 2 つのプロパティ globalPackagesFolder および repositoryPath の値を編集することもできます。

フィードタブでは、パスが赤い長方形でハイライトされるため、フィードパスが無効かどうかをすぐに確認できます。

パッケージを検索し、どのフィードにも見つからない場合は、警告メッセージも検索リストに表示されます。

詳細ペインの新しい警告は、どのパッケージがまだメンテナンス中であるか、または廃止されたかを視覚的に示しています。

F# のサポート

リファクタリング

変数を導入するリファクタリングが式で使用できるようになりました。呼び出されると、適切な部分式が表示され(コードの特定の部分が選択されていない場合)、同様の部分式を置き換えるように求められます。また、新しい変数に名前を付けるのも賢く、タイプとコンテキストに応じて意味のある名前を提案します。

名前変更がアンダースコアのワイルドカードで機能するようになりました。ワイルドカードパターンを名前付き変数に変換する必要がある場合は、手動で行う代わりにリファクタリングを呼び出すことができます。名前を提案するときは、タイプとコンテキストも考慮されます。

クイックフィックスとコンテキストアクション

Import Type は大幅に改善されました。現在はより多くのケースで機能し、型を提案するときにパラメーターの数を考慮しています。Rider は、ソリューションからモジュールまたは別のプロジェクトを参照することを提案し、そこからタイプをインポートすることもできます。

Other VCS features

いくつかの新しいクイックフィックスも追加されました。パラメーターのリストで関数のアプリケーションに括弧を追加する、Extension 属性を含まれているタイプまたはモジュールに追加する、構文エラーを修正する、使用できるように変換するなどです。

Analyzers

アナライザー

冗長性を取り除くために、高速冗長修飾子アナライザーと、対応するクイックフィックスを実装しました。

エディター

さまざまなシンボルを異なる方法でハイライトするためのオプションが増えました。また、型の省略形は省略形としてハイライトされ、関数はメソッドとしてハイライトできます。どちらも外部からの貢献であり、イゴールバグダミアン(英語)に感謝します。

Rider に、|> チェーンの式の型ヒントが追加されました。チェーン全体を頭の中で追跡することなく、何が起こっているのかを追跡できます。これも外部の貢献であり、ソールレニソン(英語)に感謝します。

カラー参照がコードでハイライトされ、より見やすくなりました。

最後に、これで F# コンパイラサービスモニターができました。これもサウル(英語)のおかげです。FCS がビジー状態になると、インジケーターが表示されます。これは主に診断ツールです。これは、開発者が IDE が考えている理由を理解するのに役立ち、動作が疑わしいと思われる場合は、Rider チームに報告して分析することができます。

F# サポートのアップデートの詳細については、GitHub のリリースノート(英語)を参照してください。

x:Bind サポート

UWP 開発者に朗報– x:Bind を使用したコンパイル済みバインディングのサポートがついに登場 !

Rider は x:Bind コードを正しく解決し、いくつかのインスペクションおよび対応するクイックフィックスを提供します。プロパティ setter、BindBack 属性が欠落していること、およびオーバーロードの衝突がある場合に警告します。さらに、C# 分離コード内に適切なフィールド、プロパティ、またはメソッドを生成するための使用箇所から作成クイックフィックスのセットがあります。

x:Bind 式の内部には、コード補完と propertyPath , BindBack のパラメーター情報、および UpdateSourceTrigger 属性があります。

シグネチャーの変更および安全な削除リファクタリングは、XAML コードでのメソッドの使用を認識し、それに応じて更新します。また、静的 / 定数にするおよびフィールドのカプセル化リファクタリングは XAML コードから直接機能し、C# コードビハインドから呼び出すと、XAML の使用箇所を正しく更新します。

Nullability 認識は x:Bind コード分析に統合されています。Rider は、C# コードに CanBeNull および NotNull 属性がある場合(たとえば、propertyPath で使用されるメソッドの引数の「可能な System.NullReferenceExceptionおよび「Null 可能でないエンティティへの可能な null 割り当て」)、XAML コード内に直接 null 関連のインスペクションを表示するようになりました。

使用箇所の検索や宣言に移動などの他の Rider 機能も x:Bind バインディングを認識しています。

プラグイン

dotTrace

dotTrace dotUltimate

dotTrace プラグインは、Windows 上の Mono / Unity アプリケーションのネイティブ部分をプロファイルできます。ネイティブプロファイリングを有効にするオプションを使用してセッションを開始すると、パフォーマンススナップショットにネイティブコールスタックとマネージドコールスタックの両方が表示されます。

Dynamic Program Analysis

動的プログラム分析

これで、Settings/Preferences | Build, Execution, Deployment | Dynamic Program Analysis | Filtering のプロセス / モジュール / クラス / メソッドでフィルタリングして、動的プログラム分析の範囲を絞り込むことができます。

  • 特定のメソッド / クラスなどのみを分析する必要がある場合は、それをのみでコードを分析するリストに追加します。
  • 特定のメソッド / クラスなどを非表示にする必要がある場合。分析から、それをのコードを分析しないでくださいリストに追加します。

dotCover dotUltimate

新しいリリースでは、dotCover プラグインにいくつかの便利な機能が追加されています。

  • 単体テストのカバレッジウィンドウでカバレッジレポートをエクスポートできるようになりました。
  • 単体テストのカバレッジウィンドウにクイック検索機能が追加されました。
  • コード内のシンボルからカバレッジツリー内のそのシンボルに移動できるようになりました(Navigate to | Coverage Tree またはカバレッジツールウィンドウのツールバーの Navigate from Editor アイコンを使用)。

Azure Rider 用ツールキット

npm(npm install -g azurite)を使用してアズライトストレージエミュレータをインストールすると、アズライトノードサービスツールウィンドウに追加されます。ここから、ストレージエミュレータを起動、停止、クリアできます。

Azure Functions でタイマートリガーを使用している場合、関数がいつ実行されるかを定義する有効な NCrontab 式を入力する必要があります。Rider 用の Azure ツールキットは、コード補完に作業を開始できる式の例をいくつか提供することにより、crontab を編集できます。

Rider は、NCrontab 式が有効であるかどうかを検証し、問題の可能性に関する追加情報を提供します。

Markdown plugin

Markdown プラグイン

Rider の Markdown サポートに挨拶してください ! Rider 2020.2 は Markdown プラグインにバンドルされています。ソリューション内の Markdown ファイルを認識し、専用のエディターを提供して、レンダリングされた HTML をライブプレビューで表示します。

Godot support

Godot サポート

Godot の実行構成が作り直されます。実行、デバッグ、プロファイリングプレーヤーおよびエディター実行構成で実行できます。さらに、プレーヤーとエディターの両方を実行するために使用されるコマンドラインパラメーターを編集できます。

また、ソリューションエクスプローラービューのコンテキストメニューから、個々のシーンの実行またはデバッグを起動できるようになりました。

データベースのサポート

Separate editor for cell values

セル値の個別のエディター

セルに大きな値がある場合は、別のパネルで表示および編集できます。右側のツールバーを使用してソフトラップモードを切り替えることもできます。Rider のコードエディターのすべての機能をデータに使用してください !

A new UI for boolean values

ブール値の新しい UI

ブール値を表示および編集するためのよりユーザーフレンドリーな方法があります。True 値は、他のすべての値と区別するために、箇条書きでマークされています。

データエディターでの DML プレビュー

このバージョン以降、データエディターでの変更を表すクエリを確認できます。保留中の変更がある場合にアクティブになる DML アイコンがあります。アイコンをクリックすると、DML プレビューのダイアログが表示されます。Rider は JDBC ドライバーを使用してテーブルを更新するため、このクエリは必ずしもデータを変更するために実行される正確な SQL ではありませんが、ほとんどの場合は同じです。

Rider 2020.2 でも利用できるすべてのデータベースの改善については、DataGrip の新機能をチェックしてください。

Web 開発

Save time with new features for JavaScript

JavaScript の新機能で時間を節約

新しいスマートインテンション(Alt + Enter)は、いくつかのアクションをより高速に実行できます。例:数値インデックスを持つ for ループを forEach 配列メソッドにすばやく変換できるようになりました。JavaScript および TypeScript ファイルでドキュメントのコメントを確認することも簡単になりました。エディターで直接レンダリングできるため、すべての注意散漫を最小限に抑えることができます。

Make Prettier the default formatter in your JavaScript projects

Prettier を JavaScript プロジェクトのデフォルトのフォーマッターにする

組み込みのフォーマッターの代わりに Prettier を使用してコードを整理したいですか?今回の更新により、以前よりもさらに簡単になりました。JetBrains マーケットプレイスからプラグインをインストールし、次に Settings/Preferences | Plugins page で新しいコード再フォーマット時チェックボックスをオンにすると、.js , .ts , .jsx および .tsx ファイルを再フォーマットするときに IDE は Prettier を使用します。他のファイルタイプも簡単に追加できます。

Enjoy best-in-class support for Vue

Vue のクラス最高のサポートを楽しみましょう

昨年、Nuxt.js サポート、Vue 固有のコードスタイル設定、TypeScript プロジェクトの Vue に関する改善、およびその他の多くの更新を追加しました。Rider での Vue のサポートはこれまでになく進んでいます。

Rider 2020.2 でも利用できるすべての Web 開発の改善点については、WebStorm の新機能をチェックしてください。

リファクタリング

このリリースでは、競合ダイアログがリファクタリングインターフェースの個別のステップとして再設計されています。以前のプレーンリストは、ファイルごとにグループ化されたツリーに置き換えられました。単純なリストに戻るには、右側のツールバーのフラット化アイコンをクリックします。

式でパラメーターの導入またはフィールドの導入リファクタリングを呼び出すと、Rider はリファクタリングを適用する必要がある式の部分を確認します。

その他の更新

Xamarin

重要な更新がいくつかあります。

  • ファイルテンプレートは、Mac プロジェクトと iOS Xamarin プロジェクトの両方で使用できます。
  • XCode の同期を改善しました。「.Designer.cs ファイル」がない場合、Rider はエラーを表示する代わりに生成します。

その他の重要点

  • どこでも検索での検索結果の新しい表示。
  • デバッガーを .NET Core ランタイムホスティング構成に接続し、デバッグで実行することをサポートします。
  • 実行構成は、すべての実行可能なプロジェクトに対して生成されます。
  • Web サイトプロジェクトの ProjectReferences がサポートされるようになりました。
ダウンロード

30 日間の無料トライアル