LINQPadで遊んでみよう!
1. はじめに
ご無沙汰しています。花粉症で涙目、多肉系エンジニアのほりです。
弊社では開発言語に C# を採用しており、Visual Studio や Visual Studio Code で開発が行われているのですが、 ちょっとした .NETのスニペット実行などに使える LINQPad という軽量なアプリを紹介します!
2. LINQPadとは?
冒頭でも説明したとおり LINQPad は軽量な.NET実行環境(C#/F#/VB) で、以下のような特徴があります。
・データソース(DB、エクセル)に簡単に繋げる
・コンソールアプリ作るよりLINQPadのほうが気軽にためせる
・結果をグラフィカルに確認できる
実際に使ってみたほうがわかりやすいと思うので試してみましょう!
3. 試してみよう!
今回はデータをもとにグラフを描画するものを試してみます。
チュートリアルにもあるのですが、以下のように配列データを作り、ChartとDumpメソッドをぶっ叩くことで、かんたんにグラフが作れちゃいます。
var customers = new[]
{
new { Name = "John", TotalOrders = 100 },
new { Name = "Mary", TotalOrders = 130 },
new { Name = "Sara", TotalOrders = 140 },
new { Name = "Paul", TotalOrders = 125 },
};
customers.Chart (c => c.Name, c => c.TotalOrders).Dump();
customers.Dump();
/code>
上記のように単純にDumpすることで配列データを可視化してくれます!
Dump は LINQ ちゃんと書けているかなぁ・・と確認するときとかに愛用してたりします。 メソッドチェーンでかけるので、例えば以下のようなこともできちゃいます!!!
var customers = new[]
{
new { Name = "John", TotalOrders = 100 },
new { Name = "Mary", TotalOrders = 130 },
new { Name = "Sara", TotalOrders = 140 },
new { Name = "Paul", TotalOrders = 125 },
};
customers.Dump()
.Where(x => x.TotalOrders > 125).Dump()
.Where(x => x.TotalOrders > 130).Dump()
.Select(x => x.Name).Dump();
めちゃわかりやすいし、便利ですね!!
4. さいごに
LINQPadの便利さをご理解いただけましたでしょうか?笑
ちょっとコード書きたいけど、Visual Studio立ち上げるまではちょっと荷が重い・・・とかいうときにはLINQPadがおすすめです。私がよくやるのは、ログ収集や分析などにLINQPadを活用したりしています。
無償版もあるのですが、デバッグができなかったりコード補完ができないなど制約があるので有償版のほうが圧倒的にオススメです。最近は .NET Core3 に対応したバージョンも出たようなので、試してみたいと思います!!