Software

普段、Visual Studioを使う私は、ReSharperというアドインをインストールしている。ある意味、これがなしではVisual Studioで開発ができないくらい必需品。

日本語の情報が結構少ないので、紹介してみる。

ダウンロードはこちら。30日間のFree Trialが可能。

個人で使うなら$199。(C#だけなら$149。)何台にでもインストールできて、一度に使えるのは1台だけというライセンス。セットアップしておけば、こっちのPCで今使うってのをメニューですぐに切り替えられる。僕は、このライセンスを自腹購入して、会社と家とでインストールしてある。

$200の価値は絶対にある。

Code Analysis

marker_bar

まず、これ。

ソースコードのスクロールバーの横にこんなマークがでるようになる。

赤い線がError、オレンジがWarningのところ。コンパイルする前にどこがエラーになるかがわかる。

初めてReSharperをインストールすると自分がいかにWarningまるけのコードを書いているかわかる。(笑)

緑の線はSuggestions(ご提案)。言われてみればごもっともな提案ばかりなので、提案には従うべし。

線をクリックすると、そのコードの場所に飛ぶ。

code_analysis_qf_csharp

該当のコードには波線がつき、その左には色に従った豆電球ErrorBulb がつく。ぷちっと押すと 直す方法の提案が出る。選択すればその通り修正してくれる。

ありがちな提案が、「Possible 'System.NullReferenceException'」。nullチェックをしていなくてnull例外の可能性のある場所もちゃんと提案してくれる。

右に線がでなくなるまでちゃんと修正するべし。

もちろんコンパイル時にチェックすることはコンパイラがやってくれるし、それを確認してコードを修正すればいいだけのことであるが、コードを書いている横からどんどん指摘してくれるのが、非常に効率がいい。

FxCopなどだと、指摘だけしてくれるのだが、んじゃ具体的にはどう直してほしいんや?と思うことが結構あって、困りはてるのだが、ReSharperの場合、マウスクリック一発でなおしてくれるのがうれしい。その直しかたを確認して、気に入らなければCtrl+Z、自分の方法で直せばいい。

これが非常に気に入っている機能で、自分が書いているコードの書き方が統一されてあとから、読みやすくなる。その上、あぁこっちの書きかたの方が奨励されているのねって勉強になる。

強いて言えば、すべての提案が英語でなされるので、英語が苦手なひとは使えないかも。

Coding Assistance

まぁいわゆるIntelisenseのこと。

ぶっちゃけて言うと、Visual Studio標準のIntelisenseと比べて、レベルが2段くらいあっぷした感じで賢くなる。

ほとんど、選択の余地はなく、デフォルトを選んでいけば用は足りる。

括弧を開ければ、閉じた括弧も自動で付くし、セミコロンを打てば勝手にフォーマットする。タイプの量が圧倒的に減る。すなわちコーディングの速度が全然違ってくる。

Visual StudioのIntelisenseで満足している人でも、あぁこんな世界があるのねと感動できると思う。

それ以外にも、Refactoringの機能が豊富。コードを書きながら、どんどんRefactoringできるので、とっても効率がいい。例えば、関数をガンガン書いていて、ちょっと長くなったなぁと思ったところで、Extract Method。引数の順番もボタンひとつで入れかえなど。

Navigation and Search

さまざまな条件でファイルの中を探索できる機能。

もちろん、標準のVisual Studioにもある程度はいっている機能であるが、ReSharperのものとは比べものにならない。

findUsages

何が気にいっているって、この検索結果のタブ。検索結果をどんどんタブにして残しておける。これにより、関数をあっちにいったりこっちにいったりする際に、順番にたどることができる。

とある関数を修正する必要がある場合、この関数をつかっている範囲を探しだし、事前にどんな影響があるのかを考えたりするのによく使っている。

navigation_filestructure_csharp

もう一つ、よく使う機能が、この画面。ひとつのファイルの中にどんな関数、変数がはいっているのかをざっと眺めるのに使う。関数の位置をかえたければ、マウスでドラッグすれば、ファイルのほうも更新される。パブリックは一箇所に集めたいよね、とかそんなときに便利。

navigation_filestructure_xml

ほとんどの機能がそうなんだけど、C#だけの機能ではなく、XAMLでもつかえる。

XAMLだと、結構全体の構造って見失いやすいので、非常に便利。

navigation_stacktrace

もうひとつ、クラッシュダンプなどで取れた、スタックトレースのテキストをこの画面にコピーすると、クリックするだけで、プロジェクト内のそのファイルのその場所に飛べる。なにげない機能だけど、結構つかっている。

これ以外にも大量の機能があって、無意識に使っている機能も多くてうまく紹介できない。詳しくはReSharperのページを見てください。

これらの機能は当然マウスからだけでなくショートカットキーでも起動できる。

ResSharperの欠点と言えば、

Visual Studioでのエディット作業が、遅いPCではちょっともっさりしてしまうこと。まぁこれは速いPCを使えばすむことです。

この環境に慣れてしまうと、自分のPC以外のPCでコードをみなければならないときに、いらっとしてしまう。

プログラムで生成したような、凶悪なコードのファイルを読ませると、たまに固まること。Visual Studio単品よりも、不安定さが増えるかな。

それでも$200の価値以上に生産性があがります。お勧め。

トラックバック(0)

トラックバックURL: http://www.cagylogic.com/cgi-bin/MovableType/mt-tb.cgi/1450

コメントする

ウェブページ

カテゴリ

アーカイブ

2010年7月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

このブログ記事について

このページは、が2009年3月 9日 00:01に書いたブログ記事です。

ひとつ前のブログ記事は「デイライトセイビング」です。

次のブログ記事は「ReSharper 4.1 Inspection Severity」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。