.NET

LINQ & Delegates

Sintassi delle query LINQ, sintassi dei metodi, delegate, event, espressioni lambda, func/action

20 domande da colloquio·
Junior
1

Che cos'è un delegate in C#?

Risposta

Un delegate è un tipo che rappresenta riferimenti a metodi con una firma specifica. Consente di passare metodi come parametri, memorizzarli in variabili e invocarli dinamicamente. I delegate sono la base degli event e dei callback in C#, offrendo una flessibilità essenziale per la programmazione orientata agli eventi e per pattern di progettazione come Strategy o Observer.

2

Qual è la sintassi corretta per dichiarare una semplice espressione lambda?

Risposta

La sintassi (x) => x * 2 è la forma corretta per un'espressione lambda. Il simbolo => (chiamato "lambda operator") separa i parametri dall'espressione o dal corpo del metodo. Questa sintassi concisa permette di creare funzioni anonime inline, molto utili con LINQ o per passare comportamenti come parametri. Le parentesi attorno al parametro possono essere omesse se ce n'è uno solo.

3

Quale delegate generico va usato per un metodo che riceve un int e restituisce un string?

Risposta

Func<int, string> è il delegate generico appropriato perché Func è usato per metodi che restituiscono un valore. La convenzione è che l'ultimo parametro di tipo rappresenta il tipo di ritorno, mentre i precedenti rappresentano i parametri di input. Func può accettare fino a 16 parametri di input. Per i metodi senza valore di ritorno, va usato Action al posto di Func.

4

Qual è la differenza principale tra Func e Action?

5

Cosa significa LINQ?

+17 domande da colloquio

Padroneggia .NET per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis