スポンサーリンク

JetBrains Rider(C# IDE)

C# Advent Calendar 12/2分です(あれ?)

Rider(Reshaper IDE)は括弧内でもわかるようにJetBrains社が開発していて、先頃パブリックEAPとなったC#/VBのIDEです。内容的にはInteliJ IDEAなどで使用されているIDEエンジン+ResharperのC#/VBコード分析、編集機能と言う内容になっています。

現在Windowsではフルスタックの.NET Framework、.NET Core、Linux, Macではmono, .NET Coreに対応しています。IDE自体はJavaで動いています。

以下よりダウンロードが可能です。

Download Rider: The Cross-Platform .NET IDE
Download the latest version of Rider for Windows, macOS or Linux.

以下はWindows版での紹介です。

IDEの外観としてはInteliJ IDEAやPyCharmなどと基本的に同じです。

capture-2016_12_03_2103_40-001

キーアサインはInteliJ, Resarper, Visual Studioなどの中から選択でき、私はVSと同じにしています。またvimライクな編集を可能にするプラグインも用意されています。

capture-2016_12_03_2121_38-002

インテリセンスの使い勝手についてはResharperのそれそのものです。

capture-2016_12_03_2106_40-002

つまり強力です。

またReSharper同様の強力なコード解析、修正機能もそのままです。

capture-2016_12_03_2111_02-002

上はクラス名がcamelCaseになってしまっているのでPascalCaseに修正しようという提案です。

これもResharperと同様にコードヒント(電球のアイコン)が出て、修正を行ったり、Riderに無視するように指定できたりします。

capture-2016_12_03_2113_19-002

また、クラス名だけで無く、クラス名修正後も電球のアイコンがツルハシのアイコンに変わりリファクタリング機能も呼び出されます。この辺がルールに合わせた名称変更までになっているVS 2017 RCとは異なるRiderやResharperの優れた機能です。

capture-2016_12_03_2116_50-002

ここでは一つのソースファイルに二つのクラスが書かれる形になるので、Employeeクラスを別のファイルに分割するかの提案がされています。

ただ、現状コードスタイル等の設定はResharperの標準設定のままとなっていて、Resharperのような細かい設定をすることが出来ません。

capture-2016_12_03_2124_52-001

プロジェクトテンプレートは以下のようになっています。

capture-2016_12_03_2127_18-001

現状ではコンソール、WEBプロジェクト、テストプロジェクトのみとなっています。もっともGUIデザイナーは無いのでWinFormやWPFのプロジェクトが合っても困りますが。また、現状Xamarinは正式にはサポートされていません。私は使ったことがありませんが、一応Unity開発用のプラグインはあるようです。

機能的な詳しいところは以下のJetBrainsのページを参考にしてください。

Features - Rider
Rider helps you develop .NET, ASP.NET, .NET Core, Xamarin or Unity applications on Windows, macOS, or Linux. It provides rich editing support and code insight f...

最後にRiderの意義みたいなところですが、Visual Studioのオルタナティブ、マルチプラットフォームと言うところになります。Xamalin Studioがそういう立ち位置になるかとも思っていましたが、(私的には)不幸なことにXamalin Studio はVisual Studio For Macになってしまいました。

どんな製品でもオルタナティブは必要です。オルタナティブが無く、競争のない製品は腐っていくと私は信じていますので、RiderのようなAlt Visual Studioが健全に育っていくことがMSやVSにとっても必要です。フェラーリに対するランボルギーニ、Intelに対するAMD,ARMそういった存在が互いに競争してこそ、健全な機能向上、健全な価格が維持されます。

また、マルチプラットフォームなIDE接続の場合としてmonodevelopはありますが、VSは残念ながらWindowsとMacでしか動作しません。しかし。.NET Coreは真のマルチプラットフォームが目指されています。そうした中でどんなOSであっても同様にいつものように使える高機能IDEの存在意義は大きなものがあります。

以上のようなことからRiderがより発展していくことを願っています。

では、Happy Holidays!

コメント

タイトルとURLをコピーしました