Generics Veri Tipi Nedir ve Neden Kullanılır?

Generics veri tipini ilk defa duyuyor olabilirsiniz. Kendisine veri tipi demek de çok doğru sayılmasa da ben kendisinden veri tipi olarak bahsedeceğim. Yazmakta olduğunuz program içerisinde bir fonksiyon ya da bir liste içerisinde sadece 1 veri tipi görev yapabilsin ya da kullanılsın istemiyorsanız generics tam sizin aradığınız çözümdür.

Generics Yazdığınız Kodu Daha Genel Kılar

Herhangi bir veri tipi için çalışacak olan fonksiyonu generics kullanarak yazarsanız bu fonksiyonun kapsamını çok daha genişletmiş olursunuz. Herhangi bir liste tanımlamanız ya da başka bir objenizi tanımlarken 1 veri tipi yerine generics kullanırsanız bu listenizin kapsamını kesinlikle çok daha büyütürsünüz.

Peki Bu İşlemi Object Kullanarak Yapamaz mıyız?

Yapabilirsiniz. Yazmış olduğunuz kod çalışır ve unit test metodu kullanıyorsanız muhtemelen yazmış olduğunuz testleri kod başarı ile geçecektir. Object kullanımını tercih etmenizi pek tavsiye etmem. Bunun 2 temel sebebi bulunuyor.

  1. İçerik yazdırma gibi basit işlemler yapmayacaksanız proje doğru bir sonuç ile çalışmayabilir. Objeden dönüşüm işlemi yapıyorsanız muhtemelen exception hatası alabilirsiniz.
  2. Çok kayıt ile çalıştığınız zaman performans kaybı yaşamanız kaçınılmaz sondur.

Genel Data Tipi Kullanımı

Yanlış hatırlamıyorsam bu kullanım C# 2.0 ile geliştiricilerin karşısına çıkmıştır. İşin açıkçası hikaye kısmı çok da önemli değil. Biz işimize yaradığında kullanalım nimetlerinden faydalanalım, oluşturanlara teşekkür edelim kodumuza bakalım.

Yazmış olduğunuz kod herhangi bir data tipi yerine Generics data tipini kullanır ise her data tipi için aynı fonksiyonu yeniden tanıtmanıza gerek kalmaz. Bu sayede kod fazlalığından kaçınmış olursunuz.

Liste ve türevlerinde hazır tanımlı olan fonksiyonlar generics data tipi ile entegre bir şekilde çalışabildiğinden dolayı listelerinizde bu işin nimetlerini çok yiyeceksiniz. Bunu da söylemedi demeyin.

Oluşturduğunuz fonksiyonların girdi ve çıktılarında kullanacağınız değişkenlerin veri tipini genel tutmak sizi kod yazma hamallığından kurtaracaktır. Collection tipi objelerde de genel kullanmanız kesinlikle avantaj sağlayacaktır.

Genel data tipini ben ilk kez bu gün doğum günü olan bana yazılım konusunda bir çok şeyi katan Alper Adak abimden öğrendim. Teşekkür ederim Alper Abi.

KAYNAK

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir