Summary

In this chapter, we discovered that an anonymous method is a method that doesn't have a name. We just need to define the arguments and the implementation of the method. It's a shorthand notation from delegates. Then, we looked at lambda expressions, the powerful tool in functional programming, which can provide a shorthand notation from an anonymous method.

The lambda expression can also be used to form an expression tree that will be useful when we need to express our code in regular C#, deconstruct it, inspect it, and interpret it. The expression tree is like an explanation of the code. If we have a <Func<int, int, int>> expression, it explains how it will provide an int return if we give the code two integers.

Subscribing an event is also done by a lambda expression. There are two kinds of classes in the event, they are publisher and subscribers, and we can subscribe to the event using a lambda expression. It doesn't matter whether we use the event keyword or the EventHandler keyword, the lambda is always used to subscribe to the event.

The first-class function concept is also fulfilled by lambda expressions since by using it, we can assign the function into a variable or pass the function as an argument of other functions. Using lambda expressions, we can also apply a closure concept, which makes a local variable live along within the function.

For now, it's enough to discuss lambda expressions. However, we will discuss lambda expressions again in more more detail when we talk about LINQ in Chapter 5, Querying Any Collections Easily with LINQ. And, in the next chapter, we are going to talk about the extension method that can be used to extend method abilities.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset