0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【C#】VSで使用できる機能_インタラクティブ編

Posted at

Visual Studio で使用できる機能のうち

  • インタラクティブウィンドウ
  • イミディエイトウィンドウ

の使い方を紹介します。これらのツールを使用することで、コードを少し変えて何回もビルドして検証する手間を減らせるため、ぜひ使ってみてください。

インタラクティブウィンドウ

※Microsoft 公式ページでは明確な紹介が見つかりませんでした。Python でのインタラクティブウィンドウはありましたが、C#については Dev ブログでの紹介があるのみでした。

メニューバーから「表示」>「その他のウィンドウ」>「C# インタラクティブ」で表示できます。いわゆる REPL(Read-Eval-Print Loop)と呼ばれる機能です。

image-13.png

C#は通常実行にビルドが必要ですが、このインタラクティブウィンドウを使用するとコードを対話的に実行することが可能です。この機能の素晴らしい点は、対話的実行でもしっかり補完が利き、なおかつハイライトも適用されることです。

上記ではString型の name がしっかり補完に表示されています。文字列操作の処理を作成する際に手元で簡単に検証ができるため便利です。

イミディエイトウィンドウ

イミディエイトウィンドウもインタラクティブウィンドウと同様に対話的にコードを実行できる機能ですが、ブレークポイントで止まっている状態でコードが実行可能です。その時のローカル変数の状態を参照することができます。

image-14.png

特徴としては

  • ローカル変数も含めて入力補完が利く
  • メソッド実行も可能

ということがあります。そのため DB から取得したデータ配列に対して、ローカル変数のウィンドウでいちいちドロップダウンを開いて値を確認しなくても、LINQ を用いて値を調査することができます。また IsValid()IsEmpty()などの真偽値を返すメソッドをデバッグ中に実行して結果を確認することも可能です。個人的には配列の中身の値をWhere()でフィルターしたり、その時確認したい値だけをSelect()して抜き出すようなことをデバッグ中に簡単にできることが気に入っています。

まとめ

REPL 自体はわりとどの言語でもあるツールではありますが、C#の魅力の一つでもある静的型付けで補完が強力であるという特徴を残したまま使用できるのは魅力です。

この記事が皆様のコーディングライフの助けになれば幸いです。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?