C# Generic Koleksiyonlar
Bu yazımda C#’ta Generic koleksiyonlardan bahsedeceğim.Generic koleksiyonlar System.Collections.Generic namespacei altında mevcutturlar.Non-Generic koleksiyonlarda tip güvenliği yoktur ancak Generic koleksiyonlar tip güvenliği vardır.Boxing – Unboxing işlemleri yapmamıza gerek kalmadığından performans açısından artış sağlayacaklardır.
Öncelikle Generic koleksiyonların Non-Generic koleksiyonlardan artısı eksisi nedir bir bakalım.Non-Generic koleksiyonlar elemanları object tipten aldıkları için Boxing işlemine uğruyorlar.Haliyle elemanlara erişirkende Unboxing işlemi yapıyoruz.Bazen koleksiyonumuzda tek tipten elemanlar olduğu durumlar olur.Bu amaçla Non-Generic koleksiyonları kullanarak Boxing-Unboxing işlemleri performans açısından bizi olumsuz etkileyecektir.Halbuki Generic koleksiyonları kullanırsak, o tipten bir koleksiyon oluşturup , hem tip güvenliğini sağlarız hemde Boxing – Unboxing işlemine gerek duymamış oluruz.Buda performans açısından bize katkı sağlayacaktır.
Bir çok Generic kolleksiyon olmasına rağmen ben burada Listve Dictionarykoleksiyonlarını göstereceğim.
Aşağıda Non-Generic kolleksiyonlara karşılık gelen Generic kolleksiyonlar listelenmiştir.
| Generic Kolleksiyon | Non-Generic Kolleksiyon |
| Queue<T> | Queue |
| SortedDictionary<K,T> | SortedList |
| Stack<T> | Stack |
| List<T> | ArrayList |
| Dictionary<K,T> | Hashtable |
Yazımız buraya kadar konuya giriş niteliği taşımaktadır.
Bir sonraki sayfada List koleksiyonundan bahseceğim.
