Approfondimento sulle "Lambda expressions"

Un’ espressione lambda è una funzione o una subroutine che non ha un nome ed è per questo che può essere chiamata anche “funzione anonima”. Questa espressione fornisce scorciatoie per ordinare, filtrare, trovare e lavorare con le informazioni negli elenchi, rendendo più semplice la lettura e la scrittura del codice. Quindi queste funzioni godono della proprietà di semplicità infatti,con l'espressione lambda si definisce un’entità che può essere invocata direttamente, la definizione della stessa funzione risulta più corta e pulita rispetto ad un’apposita funzione creata per un certo tipo di operazione. Tuttavia,  il principale svantaggio è che tali funzioni non possono essere utilizzate se non per la definizione di oggetti.
La maggior parte delle applicazioni conserva elenchi di cose. Il codice può recuperare un set di tipi di ordine da un database e archiviarli in un array o in un elenco generico in modo che possano essere visualizzati in una casella combinata. Oppure puoi conservare l'elenco di tutti i clienti attuali per la visualizzazione e la manutenzione in una griglia:

List<Customer> custList = new List<Customer> {new Customer() { CustomerId = 1, FirstName="Bilbo", LastName = "Baggins", EmailAddress = "<a href="mailto://bb@hob.me">bb@hob.me</a>"}, new Customer() { CustomerId = 2, FirstName="Frodo", LastName = "Baggins", EmailAddress = "<a href="mailto://fb@hob.me">fb@hob.me</a>"}, new Customer() { CustomerId = 3, FirstName="Samwise", LastName = "Gamgee", EmailAddress = "<a href="mailto://sg@hob.me">sg@hob.me</a>"}, new Customer() { CustomerId = 4, FirstName="Rosie", LastName = "Cotton", EmailAddress = "<a href="mailto://rc@hob.me">rc@hob.me</a>"}};

Per estrarre l'individuo di interesse utilizzo l'espressione l'ambda con la quale basterà una sola riga:

var foundCustomer = custList.FirstOrDefault(c => c.CustomerId == 4);

il simbolo => è chiamato lambda e separa i parametri dell’espressione lambda dall’espressione stessa.

Commenti

Post popolari in questo blog

Alcuni esempi di strategie di trading algoritmico utilizzate

Processi stocastici con mean reversion: Ornstein–Uhlenbeck process, Dixit & Pindyck Model, Vasicek model, etc

La formula di Legendre e la sua utilità nelle applicazioni