Singleton Pattern Gerçek Kullanımı ve Entegrasyon

Singleton Pattern, ilgili type’ın instance oluşturma yolunu tek bir static referans üzerinden sınırlar. Ancak tek instance oluşturmakla o instance’ın değişen state’ini eşzamanlı kullanmak farklı sorunlardır. Aynı şekilde bu referans, farklı…

AutoMapper: İleri Senaryolar & ProjectTo Kullanımı

Giriş AutoMapper ProjectTo, IQueryable için projection expression üretir; mapper.Map ise yüklenen nesneleri memory’de dönüştürür.Bu rehberde: ProjectTo ile EF Core Entegrasyonu BeforeMap & AfterMap Hook’ları Custom Resolver Senaryoları Nested & Koleksiyon…

FluentValidation ile Katmanlı Doğrulama Rehberi

Giriş Veri doğrulama beklenen input contract’ını korur; authentication, authorization veya domain invariant’larının yerine geçmez. Özellikle katmanlı mimarilerde hem API katmanında hem de iş katmanında validasyon kuralları net olmalı.Bu örnekte FluentValidation,…

AutoMapper ile Basitten Karmaşığa Eşleme Rehberi

Giriş Elle yazılan kodla yapılan DTO ↔ Entity dönüşümleri, tekrar eden atamalar oluşturabilir; az sayıda açık dönüşümde elle mapping de makuldür.AutoMapper, Profile sınıflarıyla bu dönüşümleri deklaratif, test edilebilir ve bakımı…

Bogus Kütüphanesi ile Test Verisi Üretimi

Giriş Gerçekçi, rastgele ve anlamlı test verileri üretmek, birim testlerin ve geliştirme ortamının güvenilirliğini artırır. Elle JSON, XML veya obje oluşturmaktansa, Bogus kütüphanesiyle dakikalar içinde onlarca farklı senaryo için veri…

Result Pattern ile Tutarlı Response Yapıları

Result Pattern Nedir? Neden Önemli? Result Pattern, metotlarınızın başarılı mı yoksa hatalı mı sonuçlandığını tek bir yapı içinde tutmanızı sağlar. Böylece: Tek Tip Dönüş: Hem veri hem de işlem sonucunu…

Generic Repository Tasarımı ve Uygulaması

Generic Repository Nedir ve Neden Kullanılır? Generic Repository, benzer veri erişim operasyonlarını ortak bir sınıfta toplar. EF Core’da DbSet zaten birçok generic CRUD davranışını sağlar; ayrıca wrapper yazmanın bakım ve…

Unit of Work ile Transaction Yönetimi

Unit of Work ile Transaction Yönetimi Unit of Work, aynı iş birimindeki değişikliklerin takibini ve kaydetme sınırını düzenler. EF Core’da DbContext bu rolü zaten üstlenir; ayrı IUnitOfWork eklemek uygulamanın sözleşme…

Repository Pattern Nedir? Ne Zaman Kullanılır?

Repository Pattern Nedir? Neden Önemli? Repository Pattern, iş kuralları ile veri erişimi arasına bir sözleşme koyar. Ancak EF Core kullanan her projede DbContext’i ayrıca sarmalamak gerekmez. DbContext unit of work,…

Dependency Injection Nedir? .NET’te Servis Ömürleri

Dependency Injection örneğinde, sipariş toplamını hesaplayan sınıfın kargo ücretine ihtiyacı olsun. Sınıf, kargo hesabını yapan nesneyi kendi içinde oluşturduğunda hangi kuralın kullanılacağına da karar vermiş olur. Standart teslimatın yanına ekspres…