C# geliştiricileri için sözlük yapıları (Dictionary), karmaşık verileri sade ve erişilebilir biçimde yönetmenin en etkili yollarından biridir. Bu yazımızda, TryGetValue
, ContainsKey
, ContainsValue
gibi ileri düzey metotlarla sözlüklerin gücünü nasıl maksimuma çıkarabileceğinizi ve gerçek hayat senaryolarında ürün yönetimi uygulamaları ile nasıl entegre edileceğini öğreneceksiniz.
📦 1. Ürün Envanter Yönetimi İçin Dictionary Oluşturma
Karmaşık ürün listeleriyle çalışırken Dictionary<int, Ürün>
yapısı, her ürün için benzersiz bir ID ile hızlı erişim sağlar:
Dictionary<int, Ürün> urunler = new Dictionary<int, Ürün>();
urunler.Add(101, new Ürün("Laptop", 25000.75));
urunler.Add(102, new Ürün("Telefon", 15000.00));
Bu yapı, özellikle büyük ölçekli uygulamalarda hızlı sorgulama ve güvenli veri erişimi açısından idealdir.
🔎 2. TryGetValue
ile Güvenli Veri Alma
Bir ürünün sözlükte olup olmadığını kontrol etmek ve değerini almak için TryGetValue()
kullanılır. Bu sayede exception riski ortadan kalkar:
if (urunler.TryGetValue(102, out Ürün urun))
{
Console.WriteLine($"Ürün: {urun.Ad} - Fiyat: {urun.Fiyat}");
}
✍️ 3. Dictionary İçeriğinde Arama ve Güncelleme
Ürün adlarına göre arama yapmak için ContainsValue()
kullanılabilir. Ayrıca, fiyat gibi özellikleri güncellemek için doğrudan nesneye erişim yeterlidir:
urunler[102].Fiyat = 18000.99; // Telefon fiyatı güncellendi
Bu, projelerde dinamik fiyat yönetimi, kampanya uygulamaları gibi işlevleri hayata geçirmeyi kolaylaştırır.
🧩 4. Özelleştirilmiş Ürün Sınıfı ile Nesne Tabanlı Yönetim
class Ürün
{
public string Ad { get; set; }
public double Fiyat { get; set; }
public Ürün(string ad, double fiyat)
{
Ad = ad;
Fiyat = fiyat;
}
}
Bu yapı sayesinde sözlüğünüz yalnızca string ve int gibi temel tipler değil, kompleks nesne verileriyle de uyumlu hale gelir.
✅ Sonuç: Dictionary ile Güçlü ve Esnek Veri Yönetimi
C#’ta Dictionary yapısını sadece basit anahtar-değer eşlemesi olarak düşünmek yerine, onu sınıflarla birlikte kullanarak profesyonel düzeyde veri kontrolü, hızlı erişim ve güncelleme olanaklarına sahip olabilirsiniz.
Karmaşık ürün sistemlerinden kullanıcı verilerine kadar birçok alanda sözlükler, performansı doğrudan etkileyen bir unsurdur.