# Geavanceerde C#-functies (.NET) > Pattern matching, records, tuples, deconstruction, local functions, ref/out-parameters - 20 gespreksvragen - Mid-Level - [Gespreksvragen: .NET](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen.md) ## 1. Wat is een record in C#? **Antwoord** Een record is een onveranderlijk referentietype dat in C# 9 werd geïntroduceerd en een beknopte syntaxis biedt voor het maken van datatypes met waardegebaseerde gelijkheid. In tegenstelling tot gewone classes die referentiegelijkheid gebruiken, vergelijken records de waarden van hun eigenschappen. Gebruik records voor DTO's, value objects en onveranderlijke types waar waardegebaseerde gelijkheid gewenst is. ## 2. Wat is het verschil tussen out en ref in C#? **Antwoord** De out-parameter vereist geen initialisatie vóór de methode-aanroep maar moet in de methode worden toegewezen, terwijl ref initialisatie vóór de aanroep vereist en in de methode al dan niet kan worden gewijzigd. Beide worden per referentie doorgegeven, maar out is geoptimaliseerd voor het retourneren van meerdere waarden, terwijl ref wordt gebruikt om een bestaande variabele te wijzigen. Gebruik out voor methoden die meerdere resultaten retourneren en ref wanneer wijziging van een bestaande waarde nodig is. ## 3. Wat is pattern matching in C#? **Antwoord** pattern matching is een functie waarmee je een waarde kunt testen tegen verschillende patterns (types, waarden, eigenschappen) en code kunt uitvoeren op basis van het overeenkomende pattern. Geïntroduceerd in C# 7 en verbeterd in latere versies, vereenvoudigt het complexe voorwaardelijke structuren met switch expressions, property patterns en type patterns. Gebruik pattern matching om complexe if-else-ketens te vervangen en de leesbaarheid van de code te verbeteren. ## Nog 17 vragen beschikbaar - Wat is een tuple in C# en hoe declareer je het? - Wat is een local function in C#? Meld je gratis aan: https://sharpskill.dev/nl/login ## Andere .NET-sollicitatieonderwerpen - [C#-basisbeginselen](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/csharp-basics.md): 25 vragen, Junior - [LINQ & Delegates](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/csharp-linq-delegates.md): 20 vragen, Junior - [Essentials van de C#-taal](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/csharp-language-essentials.md): 15 vragen, Junior - [ASP.NET Core-grondbeginselen](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/aspnet-core-fundamentals.md): 18 vragen, Junior - [Levenscyclus van requests in ASP.NET Core](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/aspnet-core-request-lifecycle.md): 20 vragen, Junior - [Configuration & Settings](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/configuration-settings.md): 20 vragen, Junior - [Levenscyclus van de applicatie](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/application-lifecycle.md): 20 vragen, Junior - [Dependency Injection](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/dependency-injection.md): 24 vragen, Mid-Level - [Entity Framework Core](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/entity-framework-core.md): 25 vragen, Mid-Level - [Minimal APIs](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/minimal-apis.md): 18 vragen, Mid-Level - [Web API-ontwikkeling](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/web-api-development.md): 22 vragen, Mid-Level - [Async in ASP.NET Core](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/async-aspnet-core.md): 20 vragen, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/authentication-authorization.md): 18 vragen, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/httpclient-networking.md): 20 vragen, Mid-Level - [JSON-serialisatie](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/json-serialization.md): 20 vragen, Mid-Level - [Entity Framework Core gevorderd](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/ef-core-advanced.md): 25 vragen, Mid-Level - [Clean Architecture](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/clean-architecture.md): 20 vragen, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/logging-monitoring.md): 22 vragen, Mid-Level - [Unit Testing & xUnit](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/unit-testing-xunit.md): 20 vragen, Mid-Level - [Integratietests](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/integration-testing.md): 18 vragen, Mid-Level - [Docker & Containerization](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/docker-containerization.md): 16 vragen, Mid-Level - [NuGet-pakketbeheer](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/nuget-package-management.md): 16 vragen, Mid-Level - [Memory Management & GC](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/memory-management-gc.md): 22 vragen, Senior - [Reactief programmeren](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/reactive-programming.md): 24 vragen, Senior - [Async/await & Patterns](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/async-await-patterns.md): 26 vragen, Senior - [.NET Design Patterns](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/dotnet-design-patterns.md): 24 vragen, Senior - [Prestatieoptimalisatie](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/performance-optimization.md): 22 vragen, Senior - [Beveiliging & Best Practices](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/security-best-practices.md): 24 vragen, Senior - [SignalR & realtime](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/signalr-realtime.md): 22 vragen, Senior - [Microservices-architectuur](https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/microservices-architecture.md): 25 vragen, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/nl/technologies/dotnet/sollicitatievragen/csharp-advanced-features