マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

ラムダ式っておじさん達にはユースケースがよく解りませんでしたが、

Java 8でもラムダ式がサポートされたようなので、私を含めて、

「そろそろ、ラムダ式をちゃんと覚えよう。」

という人向けのコンテンツを書いてみました。

ラムダ式

進化

おじさん達の知識で振り返って分析してみると、
中水準言語のC言語の関数ポインタから、

高水準言語の.NET言語(C#、VB)で、

と進化してきていることぐらいは解る(?)と思います。

これを見ると、

厳密には、

というふうに進化してきています。

用途

ラムダ式は、

delegateを必要とするメソッドを
実行しやすくするために生まれてきたようです。

これについては、以下の利用例を引き合いに出して説明したいと思います。

ポイント

文法

式形式

ステートメント形式

仮引数と実引数

仮引数(parameter)

以下の場合、仮引数(parameter)を指定する。

このため、一瞬どこから現れたのか不明な変数に見える。

LINQのメソッド ベースのクエリ構文などで使用される。

実引数(argument)

上記以外の場合は、実引数を指定する。

スコープ

ラムダ式では、そのスコープの外側にある
変数やメソッドを利用でき引数の肥大化が防げる。

(これは、匿名メソッド・匿名関数でも同じ)

利用例

ということで、引数をラムダ式にすることで、

delegateを必要とするメソッドを実行しやすくする。

ようなシーンが、ラムダ式の代表的な利用ケースではないか?と思います。

参考

C# プログラミング ガイド

@IT

LINQ


Tags: プログラミング, :.NET開発


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS