
LINQ & Delegates
Składnia zapytań LINQ, składnia metod, delegates, events, wyrażenia lambda, func/action
1Czym jest delegate w C#?
Czym jest delegate w C#?
Odpowiedź
Delegate to typ reprezentujący referencje do metod o określonej sygnaturze. Pozwala przekazywać metody jako parametry, przechowywać je w zmiennych i wywoływać dynamicznie. Delegates są podstawą events i callbacków w C#, zapewniając niezbędną elastyczność dla programowania sterowanego zdarzeniami oraz wzorców projektowych takich jak Strategy czy Observer.
2Jaka jest poprawna składnia deklarowania prostego wyrażenia lambda?
Jaka jest poprawna składnia deklarowania prostego wyrażenia lambda?
Odpowiedź
Składnia (x) => x * 2 jest poprawną formą wyrażenia lambda. Symbol => (zwany "lambda operator") oddziela parametry od wyrażenia lub ciała metody. Ta zwięzła składnia umożliwia tworzenie wbudowanych funkcji anonimowych, bardzo przydatnych z LINQ lub do przekazywania zachowań jako parametry. Nawiasy wokół parametru można pominąć, jeśli jest tylko jeden.
3Którego generycznego delegate należy użyć dla metody, która przyjmuje int i zwraca string?
Którego generycznego delegate należy użyć dla metody, która przyjmuje int i zwraca string?
Odpowiedź
Func<int, string> to odpowiedni generyczny delegate, ponieważ Func jest używany dla metod zwracających wartość. Konwencja zakłada, że ostatni parametr typu reprezentuje typ zwracany, a poprzednie reprezentują parametry wejściowe. Func może przyjąć do 16 parametrów wejściowych. Dla metod bez wartości zwracanej należy używać Action zamiast Func.
Jaka jest główna różnica między Func a Action?
Co oznacza skrót LINQ?
+17 pytań z rozmów
Inne tematy rekrutacyjne .NET
Podstawy C#
Podstawy języka C#
Podstawy ASP.NET Core
Cykl życia żądania w ASP.NET Core
Configuration & Settings
Cykl życia aplikacji
Dependency Injection
Entity Framework Core
Minimal APIs
Tworzenie Web API
Async w ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Serializacja JSON
Entity Framework Core zaawansowany
Zaawansowane funkcje C#
Clean Architecture
Logging, Monitoring & Observability
Testy jednostkowe & xUnit
Testy integracyjne
Docker & Containerization
Zarządzanie pakietami NuGet
Memory Management & GC
Programowanie reaktywne
Async/await i wzorce
.NET Design Patterns
Optymalizacja wydajności
Bezpieczeństwo i Best Practices
SignalR i czas rzeczywisty
Architektura Mikroserwisów
Opanuj .NET na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo