Tasarım Desenleri Neden Önemli?
Yazılım mülakatlarında en çok sorulan konulardan biridir. Büyük projelerde ortak dil sağlar, kod kalitesini artırır.
Singleton Deseni
public sealed class Ayarlar {
private static Ayarlar _ornek;
private static readonly object _kilit = new();
private Ayarlar() { }
public static Ayarlar Ornek {
get {
lock (_kilit) {
_ornek ??= new Ayarlar();
return _ornek;
}
}
}
public string BaglantiCumlesi { get; set; }
}Factory Deseni
public abstract class Bildirim { public abstract void Gonder(); }
public class EmailBildirim : Bildirim { public override void Gonder() => Console.WriteLine("Email gönderildi"); }
public class SmsBildirim : Bildirim { public override void Gonder() => Console.WriteLine("SMS gönderildi"); }
public static class BildirimFactory {
public static Bildirim Olustur(string tip) => tip switch {
"email" => new EmailBildirim(),
"sms" => new SmsBildirim(),
_ => throw new ArgumentException("Bilinmeyen tip")
};
}Repository Deseni
Veri erişim katmanını soyutlamak için kullanılır. Entity Framework ile birlikte en çok kullanılan desendir.