LINQ

どうもこんにちは。

最近、C#を少々かじりまして。
その時に出てきたLINQについてのお話です。


LINQとは?

統合言語クエリ(Language INtegrated Query)というものだそうです。
読み方は「リンク」とのこと。

詳しくは、こちらからどうぞ。⇒ 統合言語クエリ

または、こちら ⇒ C# の統合言語クエリ (LINQ)


どんなもの?

データベースとか、配列とかのデータソースを操作するために規格化されたもの、
という認識です。
※間違いがあればご指摘を。

例えば、こんな配列があったとしましょう。
あ、今回はあくまでC#で行きます。

ここから、ageが10以上の子供の名前を抽出して出力、
というのをLINQで記述すると、こうなります。

こんな感じです。

なんか、SQLに似てますが、これはLINQのクエリ構文と呼ばれるもので、
他にメソッド構文もあり、同じことをメソッド構文で記述すると

こうなります。
 

今回の例では、とてもシンプルなものにしましたが、そのほか
OrderByや集計、別のデータソースと結合したりできます。


使ってみて?

クエリ構文は、SQLに似てしまってるがゆえにちょっととっつきにくかったです。
メソッド構文は、いわゆるORマッパーのメソッドチェーンっぽいかなー?
と思っていたのですが、
慣れてくるとクエリ構文の方が可読性が上がるな、という感じです。


最後に

今回はほんのさわりだけでした。
もっと詳しいことは当然のように先人たちが行き着いているので、
まずはいろんな方のとっかかりになればよいな、と思います。

現在、さまざまな言語でLINQの実装がされているようなので
そちらもあわせてどうぞ。

r.tanakaがお届けしました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です