# .NET Design Patterns (.NET) > Singleton, Factory, Builder, Strategy, Decorator, Repository, Unit of Work, SOLID - 24 domande da colloquio - Senior - [Domande da colloquio: .NET](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio.md) ## 1. Qual è il problema principale del pattern Singleton nel .NET moderno con Dependency Injection? **Risposta** Il pattern Singleton classico (istanza statica) entra in conflitto con la dependency injection perché crea un accoppiamento forte e rende difficili i test. Nel .NET moderno è preferibile usare il service lifetime 'Singleton' tramite DI (services.AddSingleton), che offre la stessa garanzia di istanza unica permettendo al contempo injection, mocking e testabilità. Il Singleton statico aggira il container DI e crea dipendenze nascoste. ## 2. Nel pattern Factory Method, qual è la differenza tra Factory Method e Abstract Factory in .NET? **Risposta** Factory Method definisce un metodo virtuale per creare un singolo tipo di oggetto (es. CreateLogger), consentendo alle sottoclassi di decidere quale classe concreta istanziare. Abstract Factory definisce un'interface per creare famiglie di oggetti correlati (es. IUIFactory con CreateButton, CreateTextBox), permettendo di creare insieme più prodotti coerenti. Factory Method si concentra su un singolo prodotto con il polimorfismo, mentre Abstract Factory gestisce più prodotti della stessa famiglia. ## 3. Qual è il principale vantaggio del pattern Builder in .NET per creare oggetti complessi con molti parametri opzionali? **Risposta** Il pattern Builder evita i costruttori telescopici (più overload con diverse combinazioni di parametri) fornendo un'interface fluida per costruire l'oggetto passo dopo passo. Consente di creare oggetti complessi con parametri opzionali in modo leggibile e manutenibile, a differenza dei costruttori con oltre 10 parametri. Nel C# moderno, le init property e i record possono sostituire Builder per i casi semplici, ma Builder resta utile per validazioni complesse o costruzioni a più fasi. ## Altre 21 domande disponibili - Che cos'è il principio di Single Responsibility (SRP) in SOLID e come applicarlo in .NET? - Che cos'è il principio Open/Closed (OCP) in SOLID e come implementarlo con le interfacce in .NET? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio .NET - [Fondamenti di C#](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-basics.md): 25 domande, Junior - [LINQ & Delegates](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-linq-delegates.md): 20 domande, Junior - [Fondamenti del linguaggio C#](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-language-essentials.md): 15 domande, Junior - [Fondamenti di ASP.NET Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/aspnet-core-fundamentals.md): 18 domande, Junior - [Ciclo di vita delle richieste in ASP.NET Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/aspnet-core-request-lifecycle.md): 20 domande, Junior - [Configuration & Settings](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/configuration-settings.md): 20 domande, Junior - [Ciclo di vita dell'applicazione](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/application-lifecycle.md): 20 domande, Junior - [Dependency Injection](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/dependency-injection.md): 24 domande, Mid-Level - [Entity Framework Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/entity-framework-core.md): 25 domande, Mid-Level - [Minimal APIs](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/minimal-apis.md): 18 domande, Mid-Level - [Sviluppo di Web API](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/web-api-development.md): 22 domande, Mid-Level - [Async in ASP.NET Core](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/async-aspnet-core.md): 20 domande, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/authentication-authorization.md): 18 domande, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/httpclient-networking.md): 20 domande, Mid-Level - [Serializzazione JSON](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/json-serialization.md): 20 domande, Mid-Level - [Entity Framework Core avanzato](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/ef-core-advanced.md): 25 domande, Mid-Level - [Funzionalità avanzate di C#](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/csharp-advanced-features.md): 20 domande, Mid-Level - [Clean Architecture](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/clean-architecture.md): 20 domande, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/logging-monitoring.md): 22 domande, Mid-Level - [Test unitari & xUnit](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/unit-testing-xunit.md): 20 domande, Mid-Level - [Test di integrazione](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/integration-testing.md): 18 domande, Mid-Level - [Docker & Containerization](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/docker-containerization.md): 16 domande, Mid-Level - [Gestione dei pacchetti NuGet](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/nuget-package-management.md): 16 domande, Mid-Level - [Memory Management & GC](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/memory-management-gc.md): 22 domande, Senior - [Programmazione reattiva](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/reactive-programming.md): 24 domande, Senior - [Async/await & Pattern](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/async-await-patterns.md): 26 domande, Senior - [Ottimizzazione delle prestazioni](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Sicurezza e Best Practices](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/security-best-practices.md): 24 domande, Senior - [SignalR e tempo reale](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/signalr-realtime.md): 22 domande, Senior - [Architettura a Microservizi](https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/microservices-architecture.md): 25 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/dotnet/domande-colloquio/dotnet-design-patterns