
.NET Tasarım Desenleri
Singleton, Factory, Builder, Strategy, Decorator, Repository, Unit of Work, SOLID
1Dependency Injection ile modern .NET'te Singleton deseninin temel sorunu nedir?
Dependency Injection ile modern .NET'te Singleton deseninin temel sorunu nedir?
Cevap
Klasik Singleton deseni (statik örnek), sıkı bağımlılık oluşturduğu ve test etmeyi zorlaştırdığı için dependency injection ile çakışır. Modern .NET'te, DI üzerinden 'Singleton' servis yaşam süresini (services.AddSingleton) kullanmak daha iyidir; bu, aynı tekil örnek garantisini sunarken injection, mocking ve test edilebilirliği mümkün kılar. Statik Singleton, DI container'ı atlar ve gizli bağımlılıklar oluşturur.
2Factory Method deseninde, .NET'te Factory Method ile Abstract Factory arasındaki fark nedir?
Factory Method deseninde, .NET'te Factory Method ile Abstract Factory arasındaki fark nedir?
Cevap
Factory Method, tek bir nesne türü (örn. CreateLogger) oluşturmak için sanal bir metot tanımlar ve alt sınıfların hangi somut sınıfı örnekleyeceğine karar vermesini sağlar. Abstract Factory, ilişkili nesne ailelerini (örn. CreateButton, CreateTextBox içeren IUIFactory) oluşturmak için bir interface tanımlar ve birden fazla tutarlı ürünün birlikte oluşturulmasına olanak tanır. Factory Method polimorfizmle tek bir ürüne odaklanır, Abstract Factory ise aynı ailenin birden fazla ürününü yönetir.
3Çok sayıda isteğe bağlı parametreye sahip karmaşık nesneler oluşturmak için .NET'te Builder deseninin temel avantajı nedir?
Çok sayıda isteğe bağlı parametreye sahip karmaşık nesneler oluşturmak için .NET'te Builder deseninin temel avantajı nedir?
Cevap
Builder deseni, nesneyi adım adım oluşturmak için akıcı bir interface sağlayarak teleskopik yapıcıları (farklı parametre kombinasyonlarına sahip çok sayıda aşırı yükleme) önler. 10'dan fazla parametreli yapıcıların aksine, isteğe bağlı parametrelere sahip karmaşık nesneleri okunabilir ve bakımı kolay biçimde oluşturmayı sağlar. Modern C#'ta init property'ler ve record'lar basit durumlarda Builder'ın yerini alabilir, ancak Builder karmaşık doğrulama veya çok adımlı yapım için hâlâ kullanışlıdır.
SOLID'deki Single Responsibility Principle (SRP) nedir ve .NET'te nasıl uygulanır?
SOLID'deki Open/Closed Prensibi (OCP) nedir ve .NET'te interface'lerle nasıl uygulanır?
+21 mülakat soruları
Diğer .NET mülakat konuları
C# Temelleri
LINQ & Delegates
C# Dil Temelleri
ASP.NET Core Temelleri
ASP.NET Core İstek Yaşam Döngüsü
Configuration & Settings
Uygulama Yaşam Döngüsü
Dependency Injection
Entity Framework Core
Minimal APIs
Web API Geliştirme
ASP.NET Core'da Async
Authentication & Authorization
HttpClient & Networking
JSON Serileştirme
Entity Framework Core İleri Düzey
C# Gelişmiş Özellikleri
Clean Architecture
Logging, Monitoring & Observability
Birim Testleri & xUnit
Entegrasyon Testleri
Docker & Containerization
NuGet Paket Yönetimi
Memory Management & GC
Reaktif programlama
Async/await & Desenler
Performans Optimizasyonu
Güvenlik ve Best Practices
SignalR ve Gerçek Zamanlı
Microservices Mimarisi
Bir sonraki mülakatın için .NET'de uzmanlaş
Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.
Ücretsiz başla