# Optimisation des performances (.NET) > Profiling, BenchmarkDotNet, memory allocation, boxing/unboxing, Span, performance best practices - 22 questions d'entretien - Senior - [Questions d'entretien: .NET](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien.md) ## 1. Quel est l'avantage principal de BenchmarkDotNet par rapport à un simple Stopwatch pour mesurer les performances ? **Réponse** BenchmarkDotNet effectue des warm-ups, mesure plusieurs itérations avec stabilisation statistique, évite les biais JIT et GC. Un Stopwatch simple peut donner des résultats non représentatifs car il ne contrôle pas ces facteurs. BenchmarkDotNet fournit également des métriques détaillées comme les allocations mémoire par opération. ## 2. Quel outil Microsoft est recommandé pour analyser les allocations mémoire et identifier les fuites mémoire en production ? **Réponse** dotMemory de JetBrains et PerfView de Microsoft sont les outils recommandés pour profiler la mémoire en .NET. PerfView est gratuit, open-source et peut analyser les allocations heap, les stacks traces et les événements GC. Il est particulièrement adapté pour diagnostiquer les fuites mémoire en production sans overhead significatif. ## 3. Comment identifier les allocations mémoire cachées dans une méthode LINQ comme FirstOrDefault() ? **Réponse** Utiliser BenchmarkDotNet avec l'attribut MemoryDiagnoser permet de voir les allocations par opération. Les lambdas LINQ créent des allocations cachées via delegates. Remplacer par une boucle foreach simple élimine ces allocations. PerfView peut aussi capturer les stacks traces d'allocations pour identifier les sources. ## 19 questions supplémentaires disponibles - Dans BenchmarkDotNet, quel attribut utiliser pour mesurer les performances CPU et identifier les hotspots de code ? - Comment interpréter un résultat BenchmarkDotNet montrant Mean: 125.3 ns, StdDev: 45.2 ns ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien .NET - [Les bases de C#](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/csharp-basics.md): 25 questions, Junior - [LINQ & Delegates](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/csharp-linq-delegates.md): 20 questions, Junior - [Essentiels du langage C#](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/csharp-language-essentials.md): 15 questions, Junior - [Fondamentaux ASP.NET Core](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/aspnet-core-fundamentals.md): 18 questions, Junior - [Cycle de vie des requêtes ASP.NET Core](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/aspnet-core-request-lifecycle.md): 20 questions, Junior - [Configuration & Settings](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/configuration-settings.md): 20 questions, Junior - [Cycle de vie de l'application](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/application-lifecycle.md): 20 questions, Junior - [Dependency Injection](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/dependency-injection.md): 24 questions, Confirmé - [Entity Framework Core](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/entity-framework-core.md): 25 questions, Confirmé - [Minimal APIs](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/minimal-apis.md): 18 questions, Confirmé - [Développement Web API](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/web-api-development.md): 22 questions, Confirmé - [Async côté ASP.NET Core](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/async-aspnet-core.md): 20 questions, Confirmé - [Authentication & Authorization](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/authentication-authorization.md): 18 questions, Confirmé - [HttpClient & Networking](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/httpclient-networking.md): 20 questions, Confirmé - [Sérialisation JSON](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/json-serialization.md): 20 questions, Confirmé - [Entity Framework Core avancé](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/ef-core-advanced.md): 25 questions, Confirmé - [Fonctionnalités avancées C#](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/csharp-advanced-features.md): 20 questions, Confirmé - [Clean Architecture](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/clean-architecture.md): 20 questions, Confirmé - [Logging, Monitoring & Observability](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/logging-monitoring.md): 22 questions, Confirmé - [Tests unitaires & xUnit](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/unit-testing-xunit.md): 20 questions, Confirmé - [Tests d'intégration](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/integration-testing.md): 18 questions, Confirmé - [Docker & Containerization](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/docker-containerization.md): 16 questions, Confirmé - [NuGet Package Management](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/nuget-package-management.md): 16 questions, Confirmé - [Memory Management & GC](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/memory-management-gc.md): 22 questions, Senior - [Programmation réactive](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/reactive-programming.md): 24 questions, Senior - [Async/await & Patterns](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/async-await-patterns.md): 26 questions, Senior - [.NET Design Patterns](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/dotnet-design-patterns.md): 24 questions, Senior - [Sécurité & Best Practices](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/security-best-practices.md): 24 questions, Senior - [SignalR & Real-time](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/signalr-realtime.md): 22 questions, Senior - [Architecture Microservices](https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/microservices-architecture.md): 25 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/dotnet/questions-entretien/performance-optimization